私は解決策をオンラインで試しましたが、どれも私のために働いていませんでした。重複する列の値を持つ行を取得する
Table :
Id rank
1 100
1 100
2 75
2 45
3 50
3 50
私は、彼らが重複を持っているbeacuse ID 1と3は、返さたいです。
私は
select * from A where rank in (
select rank from A group by rank having count(rank) > 1
のようなものを試してみましたこれはまた、任意の重複なしのIDを返しました。助けてください。複数の行に存在するすべてのid
を得るが、これらすべての行は同じを持っている:平易な英語で
SELECT id
FROM your_table
GROUP BY id
HAVING COUNT(*) > 1 AND COUNT(DISTINCT rank) = 1
を:
select id from table
group by id, rank
having count(*) > 1
http://stackoverflow.com/questions/4010311/how-to-check-if-all-fields-oracleでユニークな – tyjkenn
重複する質問、皮肉! - http://stackoverflow.com/questions/2053569/is-it-possible-for-sql-to-find-records-with-duplicates –
@JCooper:申し訳ありません。私は投稿する前にオンラインで調べた。試したカップル。しかし、私はIDとランクの両方でグループ化する必要があることを知りませんでした。 – user393148