2016-09-14 15 views
0

sqlite3またはMySQLを使用したデータベースの割り当てから質問があります。質問は次のとおりです。重複タプルを持つテーブルからの姓別のSQLグループ

2人以上の大統領に属するすべての姓を検索します。姓を繰り返してはいけません。異なる2つの用語を扱う同じ人物(Grover Clevelandなど)は、同じ姓の2人の大統領の場合を構成しないことに注意してください。

SELECT lastName FROM Presidents GROUP BY lastName HAVING COUNT(lastName) > 1; 

私はすべてのユニークな姓を分離するために管理し、しかし、私はグローバークリーブランドの倍な大統領にも同じ人物を削除することはできません。 クエリから同じ人物を削除する方法を教えてもらえますか?

「WHERE firstName is UNIQUE」を含めると考えましたが、動作しません。 何か助けていただければ幸いです。ありがとう

答えて

1

別名が1より大きい姓を選択します。このクエリは、まさにこのん:

SELECT lastName 
FROM Presidents 
GROUP BY lastName 
HAVING COUNT(DISTINCT firstName) > 1 

は、実行中のデモについては、以下のリンクをクリックしてください:

SQLFiddle

+0

屋ああ、そうです。私は姓でグループ化し、同じ名前の人を削除する必要があります。どうもありがとう。私はDISTINCT firstName、lastNameの行に沿って考えて、姓と名の組み合わせが一意であるように考えています。とりあえずありがとう :) – leo277

関連する問題