Може би сте искали това (запазвам очевидни синтактични и правописни грешки, които не мога да коригирам без повече информация):
SELECT NumberOfAccedentInYear = ISNULL
(
(SELECT COUNT(AccedentId)
FROM Accident
GROUP BY DriverId, YEAR(AccedentDate)
HAVING (DriverId [email protected])<3))
, 0
);
За всеки, който е любопитен относно дискусията COALESCE срещу ISNULL и защо промених отговора си, за да използвам ISNULL, @kanav правилно посочи, че COALESCE е по-скъп. COALESCE оценява подзаявката два пъти, както обясних тук:https://stackoverflow.com/a/10669660/ 61305