Từ trang tài liệu về các chức năng tổng hợp:
Vì vậy, nếu bạn muốn đảm bảo giá trị được trả về, hãy áp dụng COALESCE đến kết quả trong tổng số SUM , không phải đối số của nó:
SELECT COALESCE(SUM(capacity), 0) …
Đối với 'câu hỏi con' của Oracle, tôi không thể tìm thấy bất kỳ khái niệm nào về NULL tại trang tài liệu chính thức ( một cho 10.2 , cụ thể), nhưng hai nguồn khác không rõ ràng:
Nghĩa là, bạn không cần áp dụng NVL cho capacity . (Nhưng, như với COALESCE trong PostgreSQL, bạn có thể muốn áp dụng nó cho SUM .)