Я пытаюсь понять GROUP BY (новый для оракула dbms) без агрегатной функции.
Как это работает?
Вот что я пробовал.
Таблица EMP, на которой я буду запускать свой SQL.
SELECT ename , sal
FROM emp
GROUP BY ename , sal
SELECT ename , sal
FROM emp
GROUP BY ename;
Результат
ORA-00979: не выражение GROUP BY
00979. 00000 - "не выражение GROUP BY"
* Причина:
* Действие:
Ошибка в строке: 397 Колонка: 16
SELECT ename , sal
FROM emp
GROUP BY sal;
Результат
ORA-00979: не выражение GROUP BY
00979. 00000 - "не выражение GROUP BY"
* Причина:
* Действие: Ошибка в строке: 411 Колонка: 8
SELECT empno , ename , sal
FROM emp
GROUP BY sal , ename;
Результат
ORA-00979: не выражение GROUP BY
00979. 00000 - "не выражение GROUP BY"
* Причина:
* Действие: Ошибка в строке: 425 Колонка: 8
SELECT empno , ename , sal
FROM emp
GROUP BY empno , ename , sal;
Итак, в основном число столбцов должно быть равно числу столбцов в предложении GROUP BY, но я до сих пор не понимаю, почему и что происходит.