SQL練習7:查詢薪水漲幅超過15次的員工號emp_no以及其對應的漲幅次數t
阿新 • • 發佈:2021-01-29
SQL練習7: 查詢薪水漲幅超過15次的員工號emp_no以及其對應的漲幅次數t
題目連結:牛客網
題目描述
查詢薪水變動超過15次的員工號emp_no
以及其對應的變動次數t
。
CREATE TABLE `salaries` (
`emp_no` int(11) NOT NULL,
`salary` int(11) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`from_date`));
解法
根據題目要求,首先明確查詢的結果中包含emp_no
count
函式和group by
分組可以統計變動次數。題中要求查詢變動超過15次的員工號,那麼就應該要求同一個emp_no
的salary
有存在至少16條,因為從第二條記錄開始才算有漲幅,無論是漲幅的正負性。但實際提交的時候發現題中貌似沒有考慮這一問題。
SELECT emp_no, count(salary) t
FROM salaries
GROUP BY emp_no
HAVING t > 15