【SQL】sqlzoo练习题Using Null
所用到的表
1.
1.列出學系department是NULL值的老師
select t.name
from teacher t left join dept d on t.dept=d.id
where t.dept is null
2.inner join 的使用,内连接只取两个表的交集
3.使用不同的JOIN(外連接),來列出全部老師。(列出所有老师的名字和对应的系名称)
4.使用不同的JOIN(外連接),來列出全部學系。
5.查询教师姓名,电话。如果教师没有电话则显示’07986 444 2266’
**此处可以使用coalesce、isnull、case,都能达到同样效果
select name,coalesce(mobile,‘07986 444 2266’) as 电话号码 from teacher;
select name,isnull(mobile,‘07986 444 2266’) as 电话号码 from teacher;
6.查询所有教师的姓名,学系名称,如果教师没有学系则显示’None’
**此处可以使用coalesce、isnull、case,都能达到同样效果
7.使用COUNT來數算老師和流動電話數目。(使用count计数时NULL不计数)
8.使用COUNT 和 GROUP BY dept.name來顯示每一學系的老師數目。 使用 RIGHT JOIN 以確保工程系Engineering 是在當中。
9.查找每个教师的姓名,使用CASE,如果教师在1或2系,则后面跟着“Sci”,否则显示“Art”。Use CASE to show the name of each teacher followed by ‘Sci’ if the teacher is in dept 1 or 2 and ‘Art’ otherwise.
10.查找每个教师的姓名,使用CASE,如果教师在1或2系,则后面跟着’Sci’,如果教师在3系,则显示’Art’,否则显示’None’。Use CASE to show the name of each teacher followed by ‘Sci’ if the teacher is in dept 1 or 2, show ‘Art’ if the teacher’s dept is 3 and ‘None’ otherwise.