手把手教MySQL查询:语法、案例、真题 (3. 条件查询)

3. 条件查询

1. 语法
	where 条件语句
	
	注意:
		1. where后可以跟多个条件
		2. where后不可以使用聚合函数

2. 运算符
	* > 、< 、<= 、>= 、= 、<>
	* BETWEEN...AND  
	* IN( 集合) 
		* 集合中数据的类型必须相同或兼容
		* 集合中的数据中不能使用通配符(通配符被当做普通的字符)
		* 集合中不能有null值
	* LIKE:
		*搭配占位符使用,用于匹配字符型或数值型
			SELECT * FROM student WHERE sid LIKE '1%'; -- 匹配以1开头的数值
		* 占位符:
			* _:单个任意字符
			* %:任意多个意字符,包含0个
		* 转义符号
			* \
			* 在需要转义的字符前加一个任意字符,然后用ESCAPE语句指明该字符为转义字符
			-- 查询姓名中第二个字符为_的人
			SELECT * FROM student WHERE NAME LIKE '_\_%';
			SELECT * FROM student WHERE NAME LIKE '_a_%' ESCAPE 'a';
	* IS NULL /IS NOT NULL
	* and  或 &&
	* or  或 || 
	* not  或 !

3. 案例
	-- 查询年龄大于20岁
	SELECT * FROM student WHERE age > 20
	
	-- 查询年龄大于等于20 小于等于30		
	SELECT * FROM student WHERE age >= 20 &&  age <=30;
	SELECT * FROM student WHERE age >= 20 AND  age <=30;
	SELECT * FROM student WHERE age BETWEEN 20 AND 30;
	
	-- 查询年龄22岁,18岁,25岁的信息
	SELECT * FROM student WHERE age = 22 OR age = 18 OR age = 25
	SELECT * FROM student WHERE age IN (22,18,25);
	
	-- 查询英语成绩为null
	SELECT * FROM student WHERE english = NULL; -- 不对的。
	SELECT * FROM student WHERE english IS NULL;
	
	-- 查询英语成绩不为null
	SELECT * FROM student WHERE english  IS NOT NULL;
	
	-- 查询姓马的有哪些? like
	SELECT * FROM student WHERE NAME LIKE '马%';
	
	-- 查询姓名第二个字是化的人
	SELECT * FROM student WHERE NAME LIKE "_化%";
	
	-- 查询姓名中包含德的人
	SELECT * FROM student WHERE NAME LIKE '%德%';
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值