Resolve ORA-00937 Error Message in Oracle

Learn the motive and how to resolve the ORA-00937 error message in Oracle.

Description

When you encounter an ORA-00937 error, the following error message will appear:

ORA-00937: not a single-group group function

Cause

You tried to execute a SELECT announcement that blanketed a GROUP BY function (ie: MIN Function, MAX Function, SUM Function, COUNT Function), however was once missing the GROUP BY clause.

Resolution

The option(s) to resolve this Oracle error are:

Option #1

Rewrite the SELECT statement so that the column or expression listed in the SELECT listing is additionally discovered in the GROUP BY clause.

Option #2

Remove the GROUP BY function (ie: MIN Function, MAX Function, SUM Function, COUNT Function) from the SELECT statement.

Option #3

Remove the expression from the SELECT listing that was once not in the GROUP BY clause.

For example, if you had tried to execute the following SELECT statement:

SELECT department, MIN(salary) AS "Lowest salary"
FROM employees;

You would receive the following error message:

You should correct this via together with department in the GROUP BY clause as follows:

SELECT department, MIN(salary) AS "Lowest salary"
FROM employees
GROUP BY department;