平成26年 春期 データベーススペシャリスト 午前II 問16

“商品月間販売実績”表に対して、SQL文を実行して得られる結果はどれか。

商品月間販売実績
商品コード 総販売数 総販売金額
S001 150 45,000
S002 250 50,000
S003 150 15,000
S004 400 120,000
S005 400 80,000
S006 500 25,000
S007 50 60,000

[SQL文]
SELECT A.商品コード AS 商品コード, A.総販売数 AS 総販売数
    FROM 商品月間販売実績 A
    WHERE 3 > (SELECT COUNT(*) FROM 商品月間販売実績 B
        WHERE A.総販売数 < B.総販売数)


 ア
商品コード 総販売数
S001 150
S003 150
S006 500
 イ
商品コード 総販売数
S001 150
S003 150
S007 50
 ウ
商品コード 総販売数
S004 400
S005 400
S006 500
 エ
商品コード 総販売数
S004 400
S005 400
S007 50


答え ウ


解説
問題のSQL文
 WHERE 3 > (SELECT COUNT(*) FROM 商品月間販売実績 B
     WHERE A.総販売数 < B.総販売数)
から、自分より販売総数が少ない列が3個より多い(4個以上の)、列を見つけることになるので、得られる表は

商品コード 総販売数
S004 400
S005 400
S006 500
(ウ)になります。


キーワード
・SQL文

キーワードの解説
  • SQL文
    SQL文で出てくる句について説明します。
    • SELECT
      出力するデータを指定します。
    • DISTINCT
      同じ内容の(重複した)データを除きます。
    • FROM
      操作するデータを指定します。
    • AS
      操作するデータの名前を変えます。
    • WHERE
      操作する条件を指定します。
    • GROUP BY
      同じ内容のデータをまとめます。
    • HAVING
      GROUP BYで抽出条件を指定する。
    • COUNT
      個数を数えます。
    • SUM
      集計(加算)します。
    • AVG
      平均値を計算します。

もっと、「SQL文」について調べてみよう。

戻る 一覧へ 次へ