【SQL入門講座】8. DISTINCT <未経験からデータサイエンティストを目指す!転職支援>

目次

「DISTINCT」 < 重複データの除去抽出 >

重複した値を排除して抽出したいときはどうするの?

では、実際のデータを用いてやってみましょう!
以下のデータは、1896年から2016年までに開催された全オリンピックのアスリートとイベントのデータです。(テーブル名:OLYMPICS_athlete_events)

https://domohelp.domo.com/hc/ja/articles/360043931814-
OLYMPICS_athlete_eventsテーブル名
IDデータセット内の順番に基づいてアスリートに割り当てられたID番号
Nameアスリートの名前
Sexアスリートの性別
Ageアスリートの年齢
Heightアスリートの身長(センチメートル単位)
Weightアスリートの体重(キログラム単位)
Teamこのアスリートが所属する国
NOCアスリートが所属する国を表す3文字の略語
Gamesこのオリンピック大会の開催年と季節
Year大会の開催年
Season大会の季節(SummerまたはWinter)
Cityオリンピックが開催された都市
Sport大会の種目
Event大会の名前
Medalアスリートが獲得したメダル(獲得したメダルがない場合は「NA」)
OLYMPICS_athlete_events

この中から例えば、アスリートの名前を重複せずに抽出してみましょう
その際は、「DISTINCT」を使用します。
以下のようにSQLを記述します。

使い方

DISTINCT (重複除去したいカラム名)

SELECT DISTINCT(カラム名)
FROM テーブル名;

・複数のカラムの場合は、そのカラムの値の組み合わせの重複を除去します

実践

アスリート名の重複を除去して抽出

 SELECT DISTINCT(Name)
 FROM OLYMPICS_athlete_events;
実行結果

なるほど〜、重複したレコードを除去してデータを抽出したいときは「DISTINCT」を使用するんですね!

そういうことです。

COUNT組み合わせ <抽出したデータの数を数える方法>

アスリートの人数を知りたいときはどうすれば良いんだろう…

いい疑問ですね。
そんなときはDISTINCTで重複の除去を行ない、COUNT関数を組み合わせれば良いのです。
以下のようにSQLを記述します。

使い方

COUNT (DISTINCT カラム名)

SELECT COUNT(DISTINCT カラム名)
FROM テーブル名;

実践

アスリート名の重複を除去して抽出したレコード数を数える

 SELECT COUNT (DISTINCT Name)
 FROM OLYMPICS_athlete_events;
実行結果

なるほど!そうやって書くのか〜〜

そういうことです。

演習

それでは演習をしてみましょう。

準備中

まとめ

  • 重複データの除去抽出:DISTINCT
  • 抽出したデータの数を数える方法:COUNT

未経験からデータサイエンティストへ!転職支援!

ROYAL AGENT&Co.では、全コンサルタントが5年以上のキャリアコンサルティング経験を持ち、データサイエンティストやAI,DX人材のご紹介に強い転職支援を行っております。

候補者様一人ひとりのキャリアに寄り添ったご支援を心がけ、無闇に求人をご紹介するのではなく、丁寧なカウンセリングを通してご志向性にあった求人をピンポイントにご紹介させて頂いております。未経験からのデータサイエンティスト転職支援実績も多数ございます。

無理な勧誘など一切ありませんので、キャリアのご相談等、まずはお気軽にお問合せください!心よりお待ちしております。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次