此查询正常工作:
SELECT country_name FROM countries WHERE country_id IN (23,86,79)
所以我可以获得国家/地区列表基于那些country_id的名称。但我想要的是用子查询来获取它们:
SELECT country_name FROM countries WHERE country_id IN (SELECT office_id FROM countries WHERE country_code='FRA')
我可以获得办公室ID的第一个名称而不是全部(在这种情况下应该是4)。 office_id和country_id是Int。有帮助吗?
答案 0 :(得分:2)
为什么你需要这样的错误/长转弯查询。您发布的查询(如下)与子查询
SELECT country_name
FROM countries
WHERE country_id IN ( SELECT office_id
FROM countries
WHERE country_code='FRA' )
可以简单
SELECT country_name
FROM countries
WHERE country_code='FRA';