SQL compact:
- Skalar deger donduren subqueryleri desteklemiyor.
- Isnull()'i desteklemiyor. Onun yerine ANSI SQL standardinda olan coalesce() kullanabilirsin.
Senin subquery skalar deger yerine set dondurerek su sekilde yazilabilirdi:
SELECT ID, realname, macnumber, coalesce(errorCount,0) as errorCount
FROM dbo.users AS U
left join
(SELECT userID, COUNT(*) AS errorCount FROM dbo.errors group by userID) err
on err.userID = U.ID
ANCAK, neden bu kadar basit bir SQL'i subquery ile karmasiklastiriyorsun? users.ID users tablosu icin primary key degil mi? Eger oyleyse:
SELECT ID,realname,macnumber,
COUNT(errors.userID) AS errorCount
FROM users
left join errors on (errors.UserID = users.ID)
group by ID,realname,macnumber