名前、雇用日などの情報が含まれているテーブルがあります。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