1. paizaラーニングトップ
  2. レベルアップ問題集
  3. 新・SQL入門編03ドリル(言語選択)
  4. 問題一覧 MySQL編
  5. 複合的な条件を指定して取得しよう

新・SQL入門編03ドリルのサムネイル
複合的な条件を指定して取得しよう (paizaランク C 相当)

問題にチャレンジして、ユーザー同士で解答を教え合ったり、コードを公開してみよう!

問題

下記の問題をプログラミングしてみよう!

注文内容が ordered_menu テーブルに保存されています。
ordered_menu テーブルの形式は次の通りです。

#カラム名データ型内容
1ordered_id整数 (int)注文の通し番号
2menu_id整数 (int)メニュー番号
3num整数 (int)メニューの注文数
4sum整数 (int)小計


次の【 値の条件 】を 1 つも満たさない注文内容を【 並べ替えのルール 】にしたがって並べ替えて、すべて取得してください。

【 値の条件 】
・注文の通し番号が 99 以上 211 以下である
・注文数が 3 つ未満である
・小計が 500 円以下である

【 並べ替えのルール 】
・メニュー番号の昇順に並べ替える
・そして、メニュー番号が同じ場合は、注文数の降順に並べ替える
・さらに、注文数が同じ場合は、メニュー番号の昇順に並べ替える

ヒント


WHERE カラム名 >= 値: カラム名 カラムの値が 以上のレコードを絞り込むことができる
WHERE カラム名 < 値: カラム名 カラムの値が より小さいレコードを絞り込むことができる
WHERE カラム名 <= 値: カラム名 カラムの値が 以下のレコードを絞り込むことができる
WHERE カラム名 BETWEEN 値1 AND 値2: カラム名 カラムの値が 値1値2 の間に含まれるレコードを絞り込むことができる
WHERE 条件1 OR 条件2 OR ... OR 条件n: 条件1 または 条件2 または ... または 条件n の条件を満たすレコードを絞り込むことができる
WHERE NOT 条件: 条件 の否定を満たすレコードを絞り込むことができる
WHERE NOT (条件1 OR 条件2): 条件1 または 条件2 を満たさないレコードを絞り込むことができる(演算の順番を変えることができる)

入力例1
ordered_menu テーブル
ordered_idmenu_idnumsum
1141200
2211250
381350
............
出力例1
ordered_id menu_id num sum
23 7 4 1400
302 7 4 1400
65 10 4 600
...

問題一覧へ戻る

ページの先頭へ戻る