Dari halaman dokumentasi tentang fungsi agregat:
Jadi, jika Anda ingin menjamin nilai yang dikembalikan, terapkan COALESCE ke hasil dari SUM , bukan argumennya:
SELECT COALESCE(SUM(capacity), 0) …
Adapun 'subquestion' Oracle, yah, saya tidak dapat menemukan gagasan tentang NULL di halaman dokumen resmi (satu untuk 10.2 , khususnya), tetapi dua sumber lainnya tidak ambigu:
Artinya, Anda tidak perlu menerapkan NVL ke capacity . (Tapi, seperti dengan COALESCE di PostgreSQL, Anda mungkin ingin menerapkannya ke SUM .)