広告スペース(バナー)
🗄️SQL レッスン
データ操作とサブクエリ5▾
構文の基本を深める7▾
応用的な条件・結合7▾
検索とテーブル操作の応用6▾
高度なクエリ技法6▾
集計とデータ整合性6▾
レッスン 18 / 50
DISTINCTで重複を取り除く
このレッスンでは、DISTINCTを使った重複データの除去方法を学び、ユニークな値の一覧を取得できるようになることを目標にします。「SQL DISTINCT 使い方」で調べている方向けの内容です。
SELECT DISTINCT 列名とすると、結果から重複する値をまとめて1つだけ表示できます。「同じクラスの一覧を、重複なしで出したい」ときなどに使います。
サンプルコードでは、SELECT DISTINCT class_id FROM students;という指定で、生徒が何人いても、実際に存在するクラスIDだけを重複なく取得しています。同じclass_idを持つ生徒が複数いても、結果には1回しか現れない様子を確認してみましょう。
初心者がよくつまずくのが、複数の列にDISTINCTを指定した場合の挙動です。生徒が何人いても、そのクラスIDだけを重複なく確認したいといった場面でよく使われます。複数の列を指定すると「その組み合わせ全体」で重複を判定する点にも注意しましょう。
集計前の下調べとしてもよく使われます。「実際にどんな種類の値が存在するか」を最初に把握することで、その後のGROUP BYやWHEREの条件を組み立てやすくなります。
SQL
OUTPUT / 実行結果
💡 初回実行時はSQLエンジンの読み込みに数秒かかります。
🎯
ここまでできればゴール達成!
重複したデータを取り除いた、ユニークな一覧が取得できるようになります。
重複したデータを取り除いた、ユニークな一覧が取得できるようになります。
広告スペース(バナー)
広告スペース(記事内)