当SQL语句返回空值时,ID <> SQL语句不起作用

时间:2018-10-12 02:48:26

标签: sql sql-server

我有两个数据表,一个数据表名为EmployeeDetailsName的{​​{1}},另一个数据列ID和{{1 }}。

现在我想让所有未链接到该项目的员工。我试图将其编写为带有参数EmployeeProject的存储过程,以定义我想知道的项目,未分配哪些员工。

我这样尝试过:

ProjectID

问题是当没有人分配给项目时,我没有得到结果。

1 个答案:

答案 0 :(得分:1)

尝试使用NOT IN代替<>

SELECT DISTINCT(Temp.ID), Temp.AssignedDevelopers FROM (SELECT DISTINCT ED.ID, ED.Name As AssignedDevelopers, P.ProjectID FROM EmployeeDetails ED  LEFT JOIN EmployeeProject P on ED.ID=P.EmployeeID) Temp WHERE ID NOT IN (SELECT EmployeeID FROM EmployeeProject WHERE ProjectID=@ProjectID AND EmployeeID=Temp.ID)