Truy vấn của bạn đang thực hiện một phép nối bên ngoài trong khi cố gắng thực hiện một số lượng. Nếu B.UserId được liệt kê là NULL, thì số đếm (*) cũng sẽ trả về NULL. Bạn có thể khắc phục điều này bằng cách thực hiện đếm A một cách rõ ràng bằng cách sử dụng "count (A. *)" hoặc bằng cách gói nó trong ISNULL ().
select A.UserId, B.UserId, count(A.*)
from select tableA A
left outer join tableB B
on A.UserBNumber = B.Number
group by A.UserId, B.UserId
hoặc
select A.UserId, B.UserId, isnull(count(*),0)
from select tableA A
left outer join tableB B
on A.UserBNumber = B.Number
group by A.UserId, B.UserId