Mysql集合过滤

本文详细介绍了SQL中常用的过滤和排序技巧,包括ISNULL/ISNOTNULL判断字段是否为空,BETWEEN判断两个值间的数据,IN/NOTIN用于不连续条件的筛选,EXISTS/NOTEXISTS检查数据的存在性,LIKE进行模糊查询,ORDERBY实现数据排序,LIMIT和TOP限制查询结果数量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

集合过滤的符号

在这里插入图片描述
过滤单个值这边就不写了,因为比较简单。

IS NULL/IS NOT NULL

因为在Mysql没填入值是比较特殊的,它不是null,空格…所以这边需要使用 IS NULL/IS NOT NULL 来判断字段是否为空

	SELECT * FROM 表名 WHERE 字段 IS NULL #查找该字段为空的数据
	SELECT * FROM 表名 WHERE 字段 IS NOT NULL #查找该字段不为空的数据

BETWEEN

判断两个值之间的数据,值可以是:时间,数字

	SELECT * FROM 表名 WHERE 字段 BETWEEN 条件1 AND 条件 # 条件1到条件2的数据

IN/NOT IN

IN/NOT IN 表示包含和不包含,用于不连续的的条件,可以是数字,字符串

	SELECT * FROM 表名 WHERE 字段 IN(条件1,条件2,...) #表示查找字段满足条件1,条件2的数据 字符串记得加 ""
	SELECT * FROM 表名 WHERE 字段 NOT IN(条件1,条件2,...) #表示查找字段不满足条件1,条件2的数据 字符串记得加 ""

EXISTS/NOT EXISTS

EXISTS/NOT EXISTS 表示存在与不存在 链接

LIKE

模糊查询:可以配合 % _ 来查找字符串
注意: 不要过度使用通配符,如果一定要使用尽量不要把通配符放在第一个位置,注意通配符的位置不然可能与期望值不符

通配符介绍
% 百分号匹配0~多个任意字符
_ 下划线匹配一个字符
	SELECT * FROM 表名 WHERE 字段 LIKE '陈%' #匹配第一个为陈的字段 
	SELECT * FROM 表名 WHERE 字段 LIKE '陈_' #匹配第一个为陈且后面只有一个字的字段
	SELECT * FROM 表名 WHERE 字段 LIKE '%陈%' #匹配有陈的字段

在我们查找的时候也可以把几个过滤的一起集合起来用,可以用下面两个关键字!
下面的关键字过多的使用,可以使用 () 来区分优先级!

关键字介绍
OR或者
AND

ORDER BY

ORDER BY 表示排序的条件 ASC :升序 DESC :倒序

	SELECT * FROM 表名 ORDER BY #默认升序
	SELECT * FROM 表名 ORDER BY 字段 DESC #倒叙

LIMIT

限制范围 多用于物理分页

	SELECT * FROM 表名 LIMIT 0,10 #从第一个开始往后查找10个数据

TOP

从第一个开始查找几个

	SELECT * FROM 表名 TOP 10 #从头开始查找10个
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值