AND 与 OR 组合要点
- AND 是『并且』:所有条件都成立才算命中
- OR 是『或者』:任一条件成立就算命中
- 优先级 NOT 最高,其次 AND,最后 OR,别凭直觉
- 混合 AND / OR 务必加括号,否则优先级会改写本意
- 同一列多个取值,用 IN 比一堆 OR 更清爽
- 用括号把 OR 包起来再跟 AND 组合,逻辑最清晰
AND 与 OR 组合示例
SELECT * FROM user WHERE city = 'Beijing' AND status = 'active';
SELECT * FROM user WHERE city = 'Beijing' OR city = 'Shanghai';
-- 混合时务必加括号,先算 OR 再算 AND
SELECT * FROM user WHERE status = 'active'
AND (city = 'Beijing' OR city = 'Shanghai');
避坑提醒:记住口诀:AND 比 OR 先算。凡是 AND 和 OR 同框,先把 OR 用括号圈起来,能避开绝大多数逻辑错乱。