牛客SQL題解 - 統計出當前各個title類型對應的員工當前薪水對應的平均工資

題目描述

統計出當前各個title類型對應的員工當前(to_date='9999-01-01')薪水對應的平均工資。結果給出title以及平均工資avg。
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`));
CREATE TABLE IF NOT EXISTS "titles" (
`emp_no` int(11) NOT NULL,
`title` varchar(50) NOT NULL,
`from_date` date NOT NULL,
`to_date` date DEFAULT NULL);

輸出描述

title avg
Engineer 94409.0
Senior Engineer 69009.2
Senior Staff 91381.0
Staff 72527.0

試題詳解

連接salaries表和titles表並通過title字段group by,使用AVG聚合函數求均值。代碼如下:

SELECT title,AVG(salary) AS avg
FROM salaries AS s,titles AS t
WHERE s.emp_no = t.emp_no
AND s.to_date = '9999-01-01'
AND t.to_date = '9999-01-01'
GROUP BY t.title;

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章