我有一个(部分)表格,如下所示:
Some_ID Some_Value
1 A
2 B
3 C
3 C
3 D
4 E
4 E
4 E
我想找到每个ID具有不同值的所有行,因此对于此示例,我的输出应为:
Some_ID Some_Value
3 C
3 C
3 D
它甚至不必看起来像这样,只需获取没有值的ID就足够了。
有什么想法吗?
答案 0 :(得分:1)
你可以用这个:
SELECT some_id
FROM table_name
GROUP BY some_id
HAVING COUNT(DISTINCT some_value) > 1
ORDER BY some_id;
答案 1 :(得分:1)
有一个子查询返回Some_ID,其中包含多个不同的Some_Value。加入该结果:
select t1.Some_ID, t1.Some_Value
from tablename t1
join (select Some_ID
from tablename
group by Some_ID
having count(distinct Some_Value) > 1) t2
on t1.Some_ID = t2.Some_ID