我的表有5列,其中一列名为country_visited,另一列名为name。其中一排是墨西哥和何塞,另一排是墨西哥和约翰。我想找回何塞和约翰共同拥有的国家。
SELECT country_visited
FROM table
WHERE name = "Jose" AND name = "John" AND country_visited = country_visited
只需使用having
子句,其count(非重复名称)=2
:
SELECT country_visited
FROM table
WHERE name in ('Jose','John')
GROUP BY country_visited
HAVING COUNT(distinct name)=2;
演示