2017-11-29 7 views
-2

に異なる値を持つ行を表示しますので、この例では、は、私はこのようになりますテーブル(の一部)は、単一のID

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

IDごとに異なる値を意味しますか? –

+0

複数の値を持つIDを取得したいですか? – Mohammad

答えて

1

あなたは、この使用することができます

SELECT some_id 
FROM table_name 
GROUP BY some_id 
HAVING COUNT(DISTINCT some_value) > 1 
ORDER BY some_id; 
+0

ありがとう、ちょうど私が必要としたもの。 – Feroc

+0

そのクエリは指定された期待される結果を返しません... – jarlh

+0

@jarlh私が言ったことは、IDだけで十分です。 – Feroc

1

はSome_IDの持つ1以上異なるSome_Valueを返すサブクエリを持っています。その結果のJOIN:

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 
関連する問題