SQLZOO Using Null

这篇博客探讨了SQL中如何处理NULL值,包括查询不含特定部门的教师、使用INNER JOIN、LEFT JOIN和RIGHT JOIN联接表,以及用COALESCE函数处理NULL。还展示了如何计数教师和他们的移动电话,并根据部门进行分组。最后,文章介绍了CASE语句在根据部门分类教师时的应用。

链接:https://sqlzoo.net/wiki/Using_Null

在这里插入图片描述

在这里插入图片描述

SELECT name
FROM teacher
WHERE dept IS NULL

在这里插入图片描述

SELECT teacher.name, dept.name
FROM teacher INNER JOIN dept
           ON (teacher.dept=dept.id)

在这里插入图片描述

SELECT teacher.name, dept.name FROM
teacher LEFT JOIN dept ON teacher.dept=dept.id

在这里插入图片描述

SELECT teacher.name, dept.name FROM
teacher RIGHT JOIN dept ON teacher.dept=dept.id

在这里插入图片描述

SELECT teacher.name, COALESCE(teacher.mobile,'07986 444 2266')
FROM teacher

在这里插入图片描述

SELECT teacher.name, COALESCE(dept.name, 'None') FROM
teacher LEFT JOIN dept ON teacher.dept=dept.id

在这里插入图片描述

SELECT COUNT(teacher.id), COUNT(teacher.mobile)
FROM teacher

在这里插入图片描述

SELECT dept.name, COUNT(teacher.dept) FROM
dept LEFT JOIN teacher ON dept.id=teacher.dept
GROUP BY dept.name

在这里插入图片描述

SELECT name, 
(CASE WHEN dept IN (1,2) THEN 'Sci' ELSE 'Art' END)
FROM teacher

在这里插入图片描述

SELECT name,
(CASE WHEN dept IN(1,2) THEN 'Sci'
      WHEN dept =3 THEN 'Art'
      ELSE 'None'
END)
FROM teacher
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值