sql >> Base de Datos >  >> RDS >> Oracle

SELECCIONAR SUMA devuelve una fila cuando no hay registros

"Esperaba recibir un 'No se encontraron registros' cuando no había registros, pero en cambio recibo un resultado nulo".

Entonces haz

SELECT SUM(dummy) FROM DUAL WHERE 1=2 HAVING COUNT(*) > 0

Es decir, especifique que solo desea devolver un resumen donde hubo filas que se consideraron.

SELECT SUM(dummy) FROM DUAL WHERE 1=2 HAVING SUM(dummy) IS NOT NULL

es similar, pero COUNT(*) devolvería una fila de resumen si solo hubiera filas para las que el dummy fuera nulo, mientras que este último no lo haría.