19《MySQL 教程》 WHERE 条件

19《MySQL 教程》 WHERE 条件,第1张

前面介绍了如何对表数查询、更新、删除,本小节介绍如何在查询、更新、删除 *** 作加上 WHERE 条件约束,使这些语句的 *** 作更加准确,满足业务需求。WHERE 条件的 *** 作符类型有如下:

以 teacher 表为例,查询年龄大于 18 的教师信息:

执行结果如下图:

再比如使用 LIKE 模糊查询身份z号以 020X 结尾的教师信息:

执行结果如下图:

[图片上传失败...(image-f53914-1648379120315)]

以 teacher 表为例,查询年龄大于 18 和 教师姓氏 王 的教师信息:

执行结果如下图:

[图片上传失败...(image-7dbeda-1648379120315)]

以 teacher 表为例,查询年龄大于 25 或 教师姓氏 王 的教师信息:

执行结果如下图:

以 teacher 表为例,将 age 在 20 和 30 之间的教师身份z设置为 无 :

为了演示方便,我们先给 teacher 表增加一个字段 email :

执行结果如下图:

清空表数据:

然后往 teacher 表插入几条测试数据:

然后查询 email 为 NULL 的教师信息结果集:

执行结果如下图:

本小节介绍了如果在查询、更新语句后面加上 WHERE 条件约束,需要注意的是当使用 >、 <、这样的 *** 作符和空值比较的时候,NULL值与任何其它值的比较(即使是NULL)永远不会为 TRUE ,例如要查询 name 为 NULL 的结果集要写成 name IS NULL ,而不能使用 name=NULL 。

Mysql练习题,可对本章学习的内容进行巩固

dept.sql

emp.sql

salgrade.sql

查询每个员工的工资

给查询列起别名

条件查询需要用到where语句,where语句必须放到from语句后面。

==语法格式如下==

==条件查询支持以下运算符==

==查询工资为5000的员工姓名==

==搭配%使用==

(1)

(2)

(3)

==搭配_使用==

==注意事项==

==连接查询分类==

查询每个员工的部门名称,要求显示员工名和部门名

找出每个员工的工资等级,要求显示员工名、工资、工资等级

找出每个员工的上级领导,要求显示员工名和对应的领导名称

外连接分类

==1、where后面嵌套子查询==

==2、from后面嵌套子查询==

列出各种工作的最低工资及从事此工作的雇员姓名

3、select后面嵌套子查询

查询每个员工所在部门名称

觉得不错的小伙伴可以点赞关注和收藏哦!如有错误可以指出来。

<font size="4">Java学习路线目录索引</font>

标准的方法是使用UNION联合或者CASE,我认为CASE最好,联合的结果被混淆了,我写一个CASE的例子你试试看:

select

sum(case when `id1`=1 and `check`='b' then 1 else 0 end) cnt1,

sum(case when `id2`=0 and `check`='b' then 1 else 0 end) cnt2,

sum(case when `id3`=1 and `check`='c' then 1 else 0 end) cnt3,

from `table`

语句输出的结果是这样的,非常直观吧:

cnt1 cnt2 cnt3

2 3 5


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8583989.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-18
下一篇 2023-04-18

发表评论

登录后才能评论

评论列表(0条)

保存