使用子查询

WITH RuСodes AS (
    SELECT CountryCode Code
    FROM countrylanguage
    WHERE Language = 'Russian'
)

SELECT Name
FROM country
WHERE Code IN (
    SELECT Code
    FROM RuСodes
)


Name
Azerbaijan
Belarus
Estonia
Finland
Georgia
Israel
Kazakstan
Kyrgyzstan
Lithuania
Latvia
...

公用表表达式 (CTE) 是把复杂查询拆成几个查询的简便办法,写法更灵活,也更好维护。 这个查询与用 IN 的例子类似:先把选出使用俄语的国家代码的子查询放进临时表,主查询再用这张表。