WHERE句についての詳細な解説と使用例。条件を指定してデータを絞り込む方法を学べます。
WHERE句は SELECT・UPDATE・DELETE などのクエリで対象行を絞り込むための条件指定です。
比較演算子・論理演算子・LIKE・IN・BETWEEN など多彩な条件式を組み合わせて、必要なデータだけを操作できます。
20歳以上のユーザーを取得
クエリを実行してください
名前が「山田」で始まるユーザーを取得
クエリを実行してください
電子機器または書籍カテゴリの商品を取得(IN句)
クエリを実行してください
価格が1,000〜10,000円の商品を取得(BETWEEN句)
クエリを実行してください
18歳以上30歳以下のユーザーを取得(AND条件)
クエリを実行してください
NULLの比較には IS NULL / IS NOT NULL を使う
= NULL は機能しない。NULL チェックは必ず IS NULL か IS NOT NULL を使用すること。
LIKE検索はインデックスが効きにくい
前方一致('A%')はインデックスが使われるが、後方一致('%A')や部分一致('%A%')は全件スキャンになりやすい。
INリストが長すぎるとパフォーマンスが低下する
IN句に大量の値を渡す場合は、サブクエリや一時テーブルとのJOINを検討すること。
AND と OR の優先順位に注意
AND は OR より優先度が高い。意図した条件にするために括弧 () で明示的にグループ化すること。
- 特定ユーザーの情報を取得するとき
- 期間・範囲を絞ってデータを抽出するとき
- 複数条件を組み合わせて検索するとき
- UPDATE・DELETE の対象行を限定するとき
#3 条件付き検索
usersテーブルから年齢が30歳未満のユーザーを取得してください。
#4 範囲検索
この問題にチャレンジするにはログインが必要です。ログインして全ての練習問題にアクセスしましょう。
#5 30歳以上のユーザー取得
この問題にチャレンジするにはログインが必要です。ログインして全ての練習問題にアクセスしましょう。
#8 電子機器カテゴリの商品
この問題にチャレンジするにはログインが必要です。ログインして全ての練習問題にアクセスしましょう。
#9 example.comドメインのメール
この問題にチャレンジするにはログインが必要です。ログインして全ての練習問題にアクセスしましょう。
#10 最新の注文を取得
この問題にチャレンジするにはログインが必要です。ログインして全ての練習問題にアクセスしましょう。
#13 数量が2以上の注文
この問題にチャレンジするにはログインが必要です。ログインして全ての練習問題にアクセスしましょう。