查找薪水记录超过15次的员工号emp_no以及其对应的记录次数t
请你查找薪水记录超过15次的员工号emp_no以及其对应的记录次数t
select emp_no,count(emp_no) as t
from salaries
group by emp_no
having t>15;
知识点:
1、用COUNT()函数和GROUP BY语句可以统计同一emp_no值的记录条数
2、根据题意,输出的变动次数为t,故用AS语句将COUNT(emp_no)的值转换为t
3、由于COUNT()函数不可用于WHERE语句中,故使用HAVING语句来限定t>15的条件
注意:
为什么没有用where而是用的having,记住下面的两句话就好了。
WHERE语句在GROUP BY语句之前;SQL会在分组之前计算WHERE语句。
HAVING语句在GROUP BY语句之后;SQL会在分组之后计算HAVING语句。