WHERE子句
咱们个别应用where子句进行数据过滤,比方:
SELECT p_id FROM products WHERE p_price<5;
- 应用ORDER BY应该放在WHERE之后 否则会报错。
- WHERE子句的操作符除了有大于小于等于之外还有不等于(不等于有两种写法:<>和!=)以及闭区间内BETWEEN。
特地地,MySQL有一个非凡的WHERE子句IS NULL用来判空:
SELECT p_id FROM products WHERE p_price IS NULL;
逻辑操作
AND操作符
须要同时满足多个过滤性条件的时候能够应用AND,每加一个条件加一个AND,例如:
SELECT p_id FROM products WHERE p_price<500 AND p_brand='Apple';
OR操作符
不须要同时满足给出的所有条件,只有有一个条件满足即可,例如:
SELECT p_id FROM products WHERE p_price<500 OR p_brand='Apple';
- MySQL中AND的优先级高于OR,所以如果要进行简单的逻辑运算请增加适当的圆括号。
IN操作符
IN操作符有点像枚举,用来筛选合乎括号内条件的数据,并且举荐应用IN,因为语法直观,计算秩序容易治理,操作比OR等更快,能够蕴含其余SELECT语句,例如:
SELECT p_id FROM products WHERE p_brand IN ('Apple', 'HUAWEI');
NOT
NOT操作符能够筛选出不满足之后的条件数据,例如:
SELECT p_id FROM products WHERE p_brand NOT IN ('Apple', 'HUAWEI');
参考:Forta B. MySQL crash course[M]. Pearson Education India, 2006.