Sólo hacer esto:
SELECT COALESCE(SUM(capacity), 0)
FROM objects
WHERE null IS NOT NULL;
Por cierto, se unen en el interior de SUMA es redundante, incluso si la capacidad es NULL , no hará que el resumen sea nulo.
A saber:
create table objects
(
capacity int null
);
insert into objects(capacity) values (1),(2),(NULL),(3);
select sum(capacity) from objects;
que devolverá un valor de 6, no nulo.
Y se unen dentro de una función agregada es un asesino en el rendimiento también, como su motor de RDBMS no puede simplemente extraer a través de todas las filas, se tiene que evaluar la columna de cada fila si su valor es nulo. He visto un poco de consulta OCD donde todas las consultas agregadas se fusionan en el interior, creo que el desarrollador original tiene un síntoma de Cargo Cult Programming, la consulta es muy poco útil. Eliminé la unión dentro de SUM, luego la consulta se volvió rápida.
¿Qué error obtienes? –