作者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/m.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