select emp_no,count(salary) as t
from salaries
group by emp_no
having t>15;
本题考察的是group by和having用法,其中having和where的区别是,如果使用到中间结果(像本题中的t)只能有having。此外,感觉本题有些不严谨,严格来说,下一条salary高于本条才算涨幅,但本题只要出现了一条记录就算一次涨幅,salary相同可以理解为涨幅为0,salary变少理解为涨幅为负 。
select emp_no,count(salary) as t
from salaries
group by emp_no
having t>15;
本题考察的是group by和having用法,其中having和where的区别是,如果使用到中间结果(像本题中的t)只能有having。此外,感觉本题有些不严谨,严格来说,下一条salary高于本条才算涨幅,但本题只要出现了一条记录就算一次涨幅,salary相同可以理解为涨幅为0,salary变少理解为涨幅为负 。