初詣合格祈願SQL講座

初詣合格祈願SQL講座 複数の表の連携4

目指せ!SQL

初詣合格祈願SQL講座 複数の表の連携4

グループ化されたデータを並べ替える

グループ化された表を並べ替え(ソート)することもできます。ソートは前述のORDER BY句を使用します。

<例題>
売上明細と商品表から売上Noごとの売上金額合計を求め、売上金額の降順にソートして表示する。売上金額は単価*数量で計算する。

商品表(主キー:商品コード)
商品CD商品名単価
10鉛筆30
20消しゴム50
30シャープペン250
40ボールペン150
50色鉛筆700
60ノート100

売上No日付顧客CD
12001/05/27105
22001/05/27101
32001/05/27103
42001/06/27102
52001/06/27104

売上明細(主キー:売上No,連番)
売上No連番商品CD数量
111010
12307
136025
212015
22403
31308
324030
335012
346050
412021
424021
511017
52205

顧客表(主キー:顧客CD)
顧客CD顧客名
101二島商店
102姫路商事
103大阪物産
104神戸商店
105福岡商事

SELECT 売上No,SUM(単価*数量) ← 売上Noと売上金額合計を表示
FROM 商品表, 売上明細
WHERE 商品表.商品CD=売上明細.商品CD ← 商品表の商品CDと売上明細の商品CDが一致する行を結合
GROUP BY 売上No ← 売上Noでグループ化をおこなう
ORDER BY SUM(単価*数量) DESC ← 売上金額の降順にソートする

実行結果
売上No
319900
14550
43600
21200
5760

売上金額の降順にソートされている



初詣合格祈願SQL講座ページTOPに戻る