作者AmigoSafin ()
看板Database
标题[SQL ] 同时列出最资浅与最资深员工於1 query
时间Sun Jul 14 10:49:12 2019
(针对
SQL 语言的问题,用这个标题。请用 Ctrl+Y 砍掉这行)
资料库名称:oracle
资料库版本:18c
内容/问题描述:
大家好
小的想请教各位高手如果要同时列出最资深与最资浅的员工於1 query
我的code出现错误:"YRSEXPERIENCE": invalid identifier
不知道是否方便给小的一点指点?
谢谢了!!
select d.department_name, rank() over (order by
sum(round((SYSDATE-e.hire_date)/365.24,0)) DESC) AS YRSEXPERIENCE
from RITDB_department d LEFT JOIN RITDB_employee e ON
d.department_id=e.department_id
where YRSEXPERIENCE = (select max(YRSEXPERIENCE) from RITDB_employee e)
or YRSEXPERIENCE = (select min(YRSEXPERIENCE) from RITDB_employee e)
SYSDATE-hire_date是用於计算工作年资
--
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 129.21.68.12 (美国)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Database/M.1563072554.A.249.html
1F:推 criky: 选max,min.hire date就可以了吧 07/14 13:37
2F:→ AmigoSafin: yes,但要列出 department detail题目要求 07/15 02:52
3F:→ olycats: 错误讯息的意思是 07/15 18:48
4F:→ olycats: RITDB_employee这个table找不到名称为YRSEXPEEIENC的栏位 07/15 18:48
5F:→ olycats: E 07/15 18:48
6F:→ olycats: *找不到名称为YRSEXPERIENCE的栏位 07/15 18:49
7F:推 bobobobo: YRSEXPERIENCE是你定义出来的别名,下方子查询并不存在 07/15 23:32
8F:→ bobobobo: ,最简单的改法是用原本计算的方式取代下方YRSEXPERIENC 07/15 23:32
9F:→ bobobobo: E 07/15 23:32
10F:→ AmigoSafin: yes, I did that and worked. Thank you so much:) 07/30 11:09