Da página de documentação sobre funções agregadas:
Então, se você quiser garantir um valor devolvido, aplique
COALESCE
para o resultado de SUM
, não ao seu argumento:SELECT COALESCE(SUM(capacity), 0) …
Quanto à 'subquestão' da Oracle, bem, não consegui encontrar nenhuma noção de NULLs na página oficial do documento (o para 10.2 , em particular), mas duas outras fontes são inequívocas:
Ou seja, você não precisa aplicar NVL a
capacity
. (Mas, como com COALESCE
no PostgreSQL, você pode querer aplicá-lo a SUM
.)