牛客题霸sql入门篇之条件查询(三)
3 高级操作符
3.1 高级操作符练习(1)
3.1.1 题目内容
3.1.2 示例代码
SELECT device_id,gender,age,university,gpa
FROM user_profile
WHERE gender='male' AND gpa>3.5
3.1.3 运行结果
3.1.4 考察知识点
AND关键字表示会筛选出符合左右两边的条件的内容
3.2 高级操作符练习(2)
3.2.1 题目内容
3.2.2 示例代码
SELECT device_id,gender,age,university,gpa
FROM user_profile
WHERE university='北京大学' OR gpa>3.7
3.2.3 运行结果
3.2.4 考察知识点
OR关键字表示会筛选出符合左边或者右边条件的内容
3.3 Where in 和Not in
3.3.1 题目内容
3.3.2 示例代码
SELECT device_id,gender,age,university,gpa
FROM user_profile
WHERE university in('北京大学','复旦大学','山东大学')
3.3.3 运行结果
3.3.4 考察知识点
in关键字相当于多重OR
语法: 字段名 in (值1,值2...值n)
3.4 操作符混合使用
3.4.1 题目内容
3.4.2 示例代码
SELECT device_id,gender,age,university,gpa
FROM user_profile
WHERE (gpa>3.5 AND university='山东大学') OR (gpa>3.8 AND university='复旦大学');
3.4.3 运行结果
3.4.4 考察知识点
OR和AND混合在一起要注意优先级别的问题
OR的优先级别会高于AND,
因此OR和AND混用时,建议在合适的地方加上括号
3.5 查看学校名称中含北京的用户
3.5.1 题目内容
3.5.2 示例代码
SELECT device_id,age,university
FROM user_profile
WHERE university like '%北京%';
3.5.3 运行结果
3.5.4 考察知识点
某某字段含某某值,这一类问题是模糊查找
其中模糊查找中%表示匹配任意(个数任意)字符,_表示匹配一个字符
jdbc中中,传入参数前前后拼接一个%
mybatis中,直接%${search}%这样写即可