今回の記事では重複を除いたデータを取得する方法を学習します。
これで例えば金額が高い上位3つだけデータを検索できるようになったりします。
SQL文入門:パン屋さんのmenuテーブルで考えてみよう
テーブル名:sales_history
id | name | price | purchased_day |
---|---|---|---|
1 | メロンパン | 250 | 2020-09-21 |
2 | カツサンド | 400 | 2020-09-22 |
3 | メロンパン | 250 | 2020-09-23 |
4 | カレーパン | 300 | 2020-09-24 |
5 | メロンパン | 250 | 2020-09-25 |
6 | デニッシュ | 350 | 2020-09-26 |
7 | カツサンド | 400 | 2020-09-27 |
今回は販売履歴(sales_history)テーブルを使って重複を除いて検索する方法を学習しましょう!
【DISTINCT】重複したレコード(行)を除いてデータ検索する
重複したデータを除いて検索したいときはDISTINCTを使います。
SQL文は以下のように記載します。
select distinct(カラム名)
from テーブル名
;
では、販売履歴のsales_historyテーブルから、売れた商品名を重複を除いて検索してみましょう!
・販売履歴のsales_historyテーブルから、売れた商品名(name)を重複を除いて検索
select distinct(name)
from sales_history
;
↓↓↓↓実行してみると
・実行結果
name |
---|
メロンパン |
カツサンド |
カレーパン |
デニッシュ |
重複が除かれた商品名だけを検索できました。
まとめ
今回の記事をまとめると
- 重複を除いてデータを検索する場合はDISTINCTを使う
select distinct(カラム名)