数据过滤WHERE /高级数据过滤/利用通配符进行过滤
数据过滤WHERE
-
SELECT prod_name FORM Product WHERE prod_price=1.3;
prod_price的值等于1.3的所有prod_name显示在Product 表中
-
WHERE 与ORDER BY 同时存在的时候ORDER BY放在后面。
-
-
WHERE 子句操作符
标识符 代表的操作 标识符 代表的操作 = 等于 > 大于 <> or != 不等于 >= 大于等于 < 小于 !> 不大于 <= 小于等于 BETWEEN 在指定的两个值之间 !< 不小于 IS NULL 为NULL值
高级数据过滤:WHERE子句
操作符(operator)
-
AND(与操作)
WHERE 条件1 AND 条件2 AND 条件3; ORDER BY 列名需要加在WHERE语句后。
-
OR(或操作)
WHERE 条件1 OR 条件2 OR 条件3;
-
IN
WHERE 列名 IN ('值1'、‘值2’); 该列的值等于值1或者值2。
-
NOT
WHERE 列名 NOT ('值1'、‘值2’) 该列的值不等于’值1‘且不等于‘值2’
用通配符进行过滤(LIKE)
‘%’
它可以代表任意字符出现任意次数 WHERE prod_name LIKE 'Fish%'; 查找结果:Fishing,Fisheman *Fish开头的任意字符串
‘_’
它可以代表任意单个字符 WHERE prod_name LIKE 'Fish__'; 查找结果:Fishes,Fisher *Fish开头的后面有两个字符的字符串
'[JM]'
它可以代表字符J或M(这里的JM可以是任意字符) WHERE prod_name LIKE '[JM]%'; 查找结果:Justing Alex,Mark Tom *名字开头是J或M的人名
*注意通配符意味着模糊查找,所以比较耗时。
学习:《SQL必知必会》(第五版)
大家加油!