尝试创建一个查询,查看第1列中具有相同值的所有行,然后返回column1中的值,如果column2中的值是特定值。
实施例
如果这是我的表:
111 | X
111 | X
111 | X
222 | X
222 | Y
333 | X
333 | X
我想找到并返回第1列中所有行中第2列都有X的任何值,我希望结果为:
111
333
由于1111和3333的所有实例在column2中都有一个X
提前致谢!!!
答案 0 :(得分:1)
尚未对真实数据库进行过测试,但这应该是一个技巧:
select column1
from table
group by column1
having count(distinct column2)=1 and min(column2) = 'X'
答案 1 :(得分:1)
SELECT DISTINCT col1
FROM dbo.table1 t1
WHERE NOT EXISTS(SELECT 1 FROM dbo.table1 t2
WHERE t1.col1 = t2.col1
AND t2.col2 <> 'X')