如何列出在公司工作时间超过平均水平的员工



运行此查询时,我一直得到一个空表。我该如何更改这一点,以列出在公司工作时间超过平均的员工

SELECT first_name, last_name 
FROM employees 
WHERE DATEDIFF(SYSDATE(), hire_date) > ALL (SELECT AVG(hire_date) FROM employees)

正如jarlh所指出的,您需要平均持续时间,即子查询中的DATEDIFF:

SELECT first_name, last_name 
FROM employees 
WHERE DATEDIFF(SYSDATE(), hire_date) > 
ALL (select avg(DATEDIFF(SYSDATE(), hire_date)))

最新更新