16

统计出当前各个title类型对应的员工当前薪水对应的平均工资

http://www.nowcoder.com/questionTerminal/c8652e9e5a354b879e2a244200f1eaae

题目:从统计出当前各个title类型对应的员工当前(to_date=‘9999-01-01')薪水对应的平均工资。结果给出title以及平均工资avg。

INNER JOIN+GROUP BY
SELECT t.title, AVG(salary) AS avg
FROM titles as t
INNER JOIN salaries as s
ON t.emp_no=s.emp_no
WHERE t.to_date='9999-01-01'
AND s.to_date='9999-01-01'
GROUP BY t.title;
注意:AVG(*)是自动命名为avg的,所以不用重命名
补充:可以在连接表的时候给的条件更多一些
SELECT t.title, AVG(salary)
FROM titles as t
INNER JOIN salaries as s
ON t.emp_no=s.emp_no
AND t.to_date='9999-01-01'
AND s.to_date='9999-01-01'
GROUP BY t.title;

全部评论
看来很多题解,这俩个表格进行连接,为什么要涉及到to_date字段,这完全是无关字段啊? 增加多余的字段查询条件有必要吗?匪夷所思
4 回复 分享
发布于 2021-03-19 22:01
为什么不需要在后面加上: order by avg(s.salary)
2 回复 分享
发布于 2021-02-22 11:25
想请问一下为什么 AVG(salary) 不需要表前缀呢?
1 回复 分享
发布于 2020-10-16 17:24
select t.title avg(s.salary) from titles as t inner join salaries as s on t.emp_no = s.emp_no where t.to_date = '9999-01-01' and s.to_date = '9999-01-01' group by t.title order by avg(s.salary) asc; 为什么报错呢?
点赞 回复 分享
发布于 2024-02-24 20:29 四川
我今天做的时候发现题目没有目前这俩字了,应该题目改了
点赞 回复 分享
发布于 2022-07-11 21:52
to_date是要统计当前的员工吧
点赞 回复 分享
发布于 2022-03-04 14:26
为什么要过滤to_date字段这个无关字段呢,我看很多连接查询都过滤了这类条件
点赞 回复 分享
发布于 2021-09-21 01:01
请问为什么只能where + group by,不能用group by + having呢?
点赞 回复 分享
发布于 2021-01-27 22:00
inner join省略了为什么通过不了
点赞 回复 分享
发布于 2020-12-29 10:37

相关推荐

喜欢核冬天的哈基米很想上市:会爆NullPointerException的
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
05-01 13:13
ecece:这么明目张胆虚报就业率啊
点赞 评论 收藏
分享
评论
25
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务