Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.
Oracle/PLSQL: mensaje de error ORA-00979
Aprenda por qué y cómo resolver los mensajes de error ORA-00979 en Oracle.
describir
Cuando encuentra un error ORA-00979, aparece el siguiente mensaje de error:
- ORA-00979: no es una expresión GROUP BY
razón
Intentó ejecutar una declaración SELECT que incluye una función GROUP BY (es decir: función MIN, función MAX, función SUM, función COUNT) y una expresión que no está en la lista SELECT en la cláusula GROUP BY.
resolver
Las opciones para resolver este error de Oracle incluyen:
Opción 1
Vuelva a escribir la declaración SELECT para que las columnas o expresiones enumeradas en la lista SELECT también se encuentren en la cláusula GROUP BY.
Opcion 2
Elimine las funciones GROUP BY (es decir: función MIN, función MAX, función SUM, función COUNT) de la instrucción SELECT.
Opción #3
Elimina expresiones de la lista SELECT que no están en la cláusula GROUP BY.
Por ejemplo, si intenta ejecutar la siguiente instrucción SELECT:
SELECT department, company, MIN(salary) AS "Lowest salary" FROM employees GROUP BY department;
Recibirá el siguiente mensaje de error:
Puede corregir esto incluyendo la empresa en la cláusula GROUP BY de la siguiente manera:
SELECT department, company, MIN(salary) AS "Lowest salary" FROM employees GROUP BY department, company;