Có thể bạn muốn điều này (Tôi đang giữ các lỗi cú pháp và chính tả rõ ràng mà tôi thực sự không thể sửa nếu không có thêm thông tin):
SELECT NumberOfAccedentInYear = ISNULL
(
(SELECT COUNT(AccedentId)
FROM Accident
GROUP BY DriverId, YEAR(AccedentDate)
HAVING (DriverId [email protected])<3))
, 0
);
Đối với bất kỳ ai tò mò về cuộc thảo luận COALESCE vs ISNULL và tại sao tôi thay đổi câu trả lời của mình để sử dụng ISNULL, @kanav đã chỉ ra một cách đúng đắn rằng COALESCE đắt hơn. COALESCE đánh giá truy vấn con hai lần, như tôi đã giải thích ở đây: https://stackoverflow.com/a/10669660/ 61305