这里主要练习一下两种条件方法,先是case when方法,
语法是CASE expressing WHEN condition THEN return
这里expressing 不是必须的,如果有,就是拿来和condition进行比较的,意即如果有expressing,默认将它和WHEN后面的条件进行=比较,如果真,返回THEN后面的结果。下面是有expressing和没有expressing的两种写法:
或者,我们可以用if方法
if的语法是IF(condition, value_if_true, value_if_false)
前面介绍了如何对表数查询、更新、删除,本小节介绍如何在查询、更新、删除 *** 作加上 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 。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)