我有一张表o员工包含姓名,工作日期和一些更多信息。ORACLE 12c - “不是单一群体功能”
我想检查大部分雇员是哪一年受雇的。
我编写一个查询其每年算上就业:此查询的
SELECT EXTRACT (YEAR FROM e1.empl_date) AS YEAR, COUNT(e1.id_empl) AS EMPL_NUMBER
FROM employees e1
GROUP BY EXTRACT (YEAR FROM e1.empl_date);
而且结果是元组:
YEAR | EMPL_NUMBER
1993 | 3
1997 | 2
等等...
现在我想获得EMPL_NUMBER的最大值:
SELECT YEAR, MAX(EMPL_NUMBER)
FROM (SELECT EXTRACT (YEAR FROM e1.empl_date) AS YEAR, COUNT(e1.id_empl) AS EMPL_NUMBER
FROM employees e1
GROUP BY EXTRACT (YEAR FROM e1.empl_date));
然后我得到一个错误:
ORA-00937: not a single-group group function
我不明白为什么我得到一个错误,因为子查询返回2列元组。
该查询返回与子查询相同的结果。 – user
但您没有错误... ..正确吗? – scaisEdge
答案更新为获取最大年份(EMPL_NUMBER) – scaisEdge