問題
14WHERE句で条件式を書こう!
これまでUPDATE文やDELETE文の条件指定で使用したWHERE句は、SQLで最も使用される修飾語です。但しINSERT文には使用できないので注意が必要です。 データを自由自在に扱うには、WHERE句を使い回せるようになることが必須です!
SQLの問題に挑戦しよう!
問題
「WHERE句で条件式を書こう!」
はじめに問題文の下にあるコードを実行し、家計簿テーブルを作成してください。
家計簿テーブルが作成ができたら、SELECT文とWHERE句を使って
支出が'5000円'より大きいデータを全て表示させて下さい。
あらかじめエディタに書くコード
USE ninjacode;
CREATE TABLE 家計簿 (
日付 INT, 費目 VARCHAR(20),
収入 INT, 支出 INT, 詳細 VARCHAR(255)
);
INSERT INTO 家計簿
(日付, 費目, 収入, 支出, 詳細)
VALUES
(20221205, '家賃', 0, 80000, '10月の家'),
(20221205, '光熱費', 0, 10000, '10月の電気代'),
(20221210, '交際費', 0, 6000, '会社の飲み会'),
(20221216, '食費', 0, 1400, 'ランチ'),
(20221224, '娯楽費', 0, 8000, 'テーマパークへ行った'),
(20221225, '給料', 250000, 0, '11月の給料');
SELECT * FROM 家計簿;
¥SQL¥
期待する画面
解答と解説(WHERE句で条件式を書こう!)
解説
※ご登録後トークルーム下部にあるメニュー内
「無料問題集※解答付き」を押すと
解答閲覧用URLが届きます
'5000円'より大きいデータだけを抽出するには
WHEREに続けて条件式を書きます。
条件式とは、その結果が必ず真(TRUE)か偽(FALSE)になる式のことです。
「5000円より大きい」を指定するには、支出カラムに比較演算子を用いて表現します。
「支出 > 5000」とすることで支出が5000円よりも大きかった場合の情報を取得する
というように命令することができます。
補足
WHERE句を含むSQL文を受け取ったDBMSは、テーブルの全ての行について条件式が真になるかを調べます。
真になった行のみ、SELECTやUPDATE、DELETE等の処理を行ないます。