一个小白记录的大数据实训过程 day03
今天学的内容是MySQL的非等值查询、内连接、外连接、自连接、单行子查询、多行子查询。
练习的时候主要出的问题,指令关键词记不清,弄混,搞不清楚使用格式,逻辑上有时候问题。
比如:
– 查询部门的员工个数>5的部门编号和员工个数,并按员工个数降序排列
按照自己的逻辑写成了以下:
select department_id from employees where count(department_id) > 5
上面这个是运行错误的 格式错了
当时想的是求一下相同的department_id,数目超过5的,再继续。但是,按这个逻辑上面这个句子也不对啊!!!
正确的思维方式应该是:先用department_id分组(其实就是按照部门分好了),分好组以后,把每组里个数 > 5 的输出部门编号和员工个数,然后再降序,按照这个思维,写出来的应该是:
select count (*) num,department_id from employees
group by department_id
having num > 5
order by num desc
除此之外在敲的时候还发现
涂蓝的那个别名,必须得有(当然别名起啥这个自己定),不然运行不成功。
还有一个基础常识 where …… is (not)null这个格式!!!希望自己记住!!!要不放错顺序,要不就用成 “=”,一样的问题希望自己不要再犯第三次!!
最后,如果加了个变量名以后突然不对了,八成是因为引起歧义了。
祝自己明天顺利啊!!