集計クエリー(その4)
今回も引き続き、集計クエリーの演習を行います。条件が複合的になりますので、少し難しくなります。
1.注文書テーブルの97年7月における”飲料”及び”乳製品”各々の注文金額合計を求める。

グループ化、演算、Where条件が組み合わされた例です。順に見ていきます。
①日付の抽出条件の「97年7月」を設定するために、日付の集計欄を「Where条件」にします。97年7月ということは1997/07/01から1997/07/31の事ですから、以下の様にBetween関数を用いて指定します。日付型のフィールドは「#」で囲みます。
Between #開始日付# and #終了日付#
②商品の種類が"飲料"及び"乳製品"という条件もありますので、①と同様に種類の集計欄に「Where条件」を指定します。"飲料"と"乳製品"はどちらでもいいので「OR」で繋ぎます。①と②はAND条件になりますので、抽出条件欄は並列に記述します。もし①と②がOR条件でしたら抽出条件欄を段をずらすだけです。
③種類毎の集計値を見たいので、種類でグループ化します。
④最後に注文金額合計を求める部分ですが、集計欄を「演算」にし、[単価]と[数量]を掛けてそれのSUMをとり、金額合計を求めます。
以下が結果になります。
2.注文書テーブルで注文金額合計が10,000円以上の商品を抽出する。
1.ではWhere条件で抽出条件を指定しましたが、演算した結果を抽出条件にすることも可能です。商品でグループ化し、その金額合計が10,000円以上で抽出しています。
以下が結果になります。
3.注文書テーブルで単価が200円以上の商品の注文合計が10,000円以上の商品を抽出する。
抽出条件のAND条件の例です。単価をWhere条件にして「>=200」と指定します。
以下が結果になります。
4.注文書テーブルの注文数量の多かった順に、商品を並べ替える。
商品でグループ化し、その単位で数量の合計を取り、それを降順に並べます。
以下が結果になります。
次回は集計クエリーの演習の最後になります。
1.注文書テーブルの97年7月における”飲料”及び”乳製品”各々の注文金額合計を求める。

グループ化、演算、Where条件が組み合わされた例です。順に見ていきます。
①日付の抽出条件の「97年7月」を設定するために、日付の集計欄を「Where条件」にします。97年7月ということは1997/07/01から1997/07/31の事ですから、以下の様にBetween関数を用いて指定します。日付型のフィールドは「#」で囲みます。
Between #開始日付# and #終了日付#
②商品の種類が"飲料"及び"乳製品"という条件もありますので、①と同様に種類の集計欄に「Where条件」を指定します。"飲料"と"乳製品"はどちらでもいいので「OR」で繋ぎます。①と②はAND条件になりますので、抽出条件欄は並列に記述します。もし①と②がOR条件でしたら抽出条件欄を段をずらすだけです。
③種類毎の集計値を見たいので、種類でグループ化します。
④最後に注文金額合計を求める部分ですが、集計欄を「演算」にし、[単価]と[数量]を掛けてそれのSUMをとり、金額合計を求めます。
以下が結果になります。

2.注文書テーブルで注文金額合計が10,000円以上の商品を抽出する。

1.ではWhere条件で抽出条件を指定しましたが、演算した結果を抽出条件にすることも可能です。商品でグループ化し、その金額合計が10,000円以上で抽出しています。
以下が結果になります。

3.注文書テーブルで単価が200円以上の商品の注文合計が10,000円以上の商品を抽出する。

抽出条件のAND条件の例です。単価をWhere条件にして「>=200」と指定します。
以下が結果になります。

4.注文書テーブルの注文数量の多かった順に、商品を並べ替える。

商品でグループ化し、その単位で数量の合計を取り、それを降順に並べます。
以下が結果になります。

次回は集計クエリーの演習の最後になります。
- 関連記事
スポンサーサイト