SQLの比較演算子について、基本的な使い方から実践的な応用まで、具体的なコード例を交えて解説します。データベース操作の効率を上げるには、比較演算子をどのように活用すればよいのでしょうか?
SQLの不等号と演算子の使い方と実践的な条件式の解説
SQLの不等号演算子の基本から応用まで、実践的なコード例を交えて詳しく解説します。データベース操作で避けては通れない不等号の使い方、知っておくべきポイントとは?
SQLで使用される主要な比較演算子について、具体的な例を交えて解説します。
-- 等しくない場合の比較
SELECT * FROM employees WHERE salary <> 5000000
-- より大きい場合の比較
SELECT * FROM employees WHERE age > 30
-- 以上の場合の比較
SELECT * FROM employees WHERE experience >= 5
比較演算子の一覧表:
演算子 | 意味 | 使用例 |
---|---|---|
<> | 等しくない | price <> 1000 |
!= | 等しくない | age != 20 |
< | より小さい | amount < 500 |
<= | 以下 | score <= 80 |
> | より大きい | salary > 300000 |
>= | 以上 | rating >= 4.5 |
日付データの比較は特に注意が必要です。以下のような形式で記述します:
-- 特定の日付より後のデータを取得
SELECT * FROM orders
WHERE order_date > '2024-01-01'
-- 日付範囲の指定
SELECT * FROM transactions
WHERE transaction_date >= '2024-01-01'
AND transaction_date < '2024-12-31'
NULL値の比較には特別な注意が必要です:
-- NULL値の比較(誤った方法)
SELECT * FROM products WHERE price <> NULL
-- NULL値の正しい比較方法
SELECT * FROM products WHERE price IS NOT NULL
-- NULL安全等価演算子の使用
SELECT * FROM products WHERE price <=> NULL
不等号を使用したJOINは、累計値の計算などで非常に有用です:
-- 累計売上の計算例
SELECT
t1.sale_date,
SUM(t2.amount) as cumulative_sales
FROM sales t1
JOIN sales t2 ON t1.sale_date >= t2.sale_date
GROUP BY t1.sale_date
ORDER BY t1.sale_date
不等号を使用する際のパフォーマンスについて重要なポイントをまとめます:
-- インデックスを活用した効率的なクエリ例
CREATE INDEX idx_price ON products(price)
SELECT * FROM products
WHERE price > 1000
AND price <= 5000