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

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

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

問題

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

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

#カラム名データ型内容
1ordered_id整数 (int)注文の通し番号
2datetime日時 (datetime)注文がおこなわれた日時
3bill整数 (int)注文の合計金額


次の【 値の条件 】を満たす注文履歴を、合計金額の昇順に並べ替えてすべて取得してください。

【 値の条件 】
条件: A または B を満たし、かつ C または D を満たす
・A: 日時が 2021-12-17 12:00:00 以降 2021-12-17 12:59:59 以前である
・B: 日時が 2021-12-17 19:00:00 以降 2021-12-17 19:59:59 以前である
・C: 合計金額が 300 円以下である
・D: 合計金額が 1000 円以上である

ヒント


WHERE カラム名 >= 値: カラム名 カラムの値が 以上のレコードを絞り込むことができる
WHERE カラム名 <= 値: カラム名 カラムの値が 以下のレコードを絞り込むことができる
WHERE カラム名 BETWEEN 値1 AND 値2: カラム名 カラムの値が 値1値2 の間に含まれるレコードを絞り込むことができる
WHERE 条件1 AND 条件2: 条件1 かつ 条件2 の条件を満たすレコードを絞り込むことができる
WHERE 条件1 OR 条件2: 条件1 または 条件2 の条件を満たすレコードを絞り込むことができる
WHERE (条件1 OR 条件2) AND 条件3: 条件1 または 条件2 を満たし、かつ 条件3 を満たすレコードを絞り込むことができる(演算の順番を変えることができる)

入力例1
ordered テーブル
ordered_iddatetimebill
12021-12-17 9:31200
22021-12-17 9:46250
32021-12-17 10:91050
.........
出力例1
ordered_id datetime bill
419 2021-12-17 19:55:00 150
48 2021-12-17 12:09:00 150
389 2021-12-17 19:22:00 150
...

問題一覧へ戻る

ページの先頭へ戻る