0

我正在尝试使用此查询来显示多个值,但返回的集合包含正确和错误的数据。因为有些数据没有列,我希望它显示为 0,我怎么能做到这一点。目前,它只是忽略那些不包含列的数据。

例子:

EmployeeID   Number of Records

1111111               2

222222                3

4444444               0

目前,它只是给了我这样的:

EmployeeID   Number of Records

 1111111               2

 222222                3

select EmployeeID, NumberofRecords 
where EmployeeNationalIDAlternateKey in ( @EmployeeID )
Group    by EmployeeID
4

1 回答 1

0

如果 Employee Table 包含所有员工的列表,而 EmployeeRecord 包含所有员工的所有个人记录的列表,则

SELECT E.EmployeeID, ISNULL(ER.EmpRcd, 0) AS NumberOfRecords
FROM Employee E 
LEFT JOIN (Select EmployeeID, Count(*) EmpRcd FROM Employee GROUP BY EmployeeID) ER
ON E.EmployeeID = ER.EmployeeID
于 2013-08-16T03:38:15.747 回答