这是一张表,可以帮助我解释这个问题。
id | name
----|--------------
1 | John
1 | John
1 | Arya
2 | Tyrion
2 | Tyrion
3 | Jamie
3 | Cersie
我需要创建一个只显示id 2的SQL查询,因为它只包含一种名称。 1和3将不会显示,因为它们有2个不同的名称。 如果Arya会成为John,那么就会显示出1,因为那时1只会包含Johns。
答案 0 :(得分:1)
按id
分组 - 您想要唯一的列。然后只选择那些一个不同 name
select id
from your_table
group by id
having count(distinct name) = 1