在MySQL數據庫操作中,WHEN
和AND
是兩個極為常見的關鍵詞,它們分別用于條件判斷和邏輯連接。但當這兩者巧妙結合時,能夠實現更復雜、更精準的數據查詢與處理。
在CASE
語句中,WHEN
用于定義條件分支,而結合AND
可以實現多條件判斷:
SELECT name, CASE WHEN score >= 90 AND score <= 100 THEN '優秀' WHEN score >= 70 AND score < 90 THEN '良好' ELSE '待提高' END AS level FROM students;
在WHERE
子句中,AND
用于連接多個過濾條件,而結合CASE WHEN
可以實現動態條件:
SELECT * FROM orders WHERE status = 'completed' AND (CASE WHEN payment_method = 'credit' THEN amount > 100 ELSE amount > 50 END);
在數據更新操作中,通過WHEN
和AND
可以實現基于復雜條件的精確更新:
UPDATE products SET price = CASE WHEN category = 'electronics' AND stock > 10 THEN price * 0.9 WHEN category = 'books' AND publish_year < 2020 THEN price * 0.7 ELSE price END;
通過合理運用WHEN
和AND
的組合,不僅能夠提高查詢的靈活性,還能實現更精細化的數據操作,是每個MySQL開發者都應該掌握的重要技巧。