mysql where 条件取反_MySQL:where子句过滤

野性酷女 2023-01-12 04:18 319阅读 0赞

一、单一条件:select 列 from 表 where 条件

eg: select prod_name,price from products where price>50

这里的比较条件包括:

cd70bf17b16f44c088ecefd2f9b6b80e.png

注意:

列类型为串类型时,值要加引号;

具有NULL值的行在匹配过滤和不匹配过滤都不会返回,要根据需要单独处理,示例如下:

全部行:

2127048e2f410b3cc2e3b1d9a293db09.png

不匹配过滤出的行:

1484e1a5e9fb6bf7a853eb1f8c6e330e.png

匹配过滤出的行:

cc3d1fd1775ae9081419ee93aec20369.png

二、多个条件

1、select 列 from 表 where 条件1 AND(OR) 条件2

注意:SQL优先计算AND,所以组合AND OR时建议根据需要次序加括号,避免问题

2、IN操作符,与OR功能相同,更加简洁快速,还可以包含其他select子句

3、Not操作符

MySQL支持NOT对IN,BETWEEN,EXISTS子句取反

三、用通配符过滤

select prod_name from products where prod_name like ‘%aaa%’

%可匹配0个、1个、多个字符,不能匹配NULL

_可匹配1个字符

注意:

不要过度使用通配符,尽量不放在搜索开始,仔细注意通配符位置。否则影响查询性能,具体原因会到索引介绍时讲解。

发表评论

表情:
评论列表 (有 0 条评论,319人围观)

还没有评论,来说两句吧...

相关阅读

    相关 MySQLwhere 子句

    我们知道从MySQL表中使用SQL SELECT 语句来读取数据。 如需有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句中。 以下是SQL SELE