2011-05-04 176 views
1

我有两个sql查询。追加sql查询结果

select EmployeeID,FName from [Mydatabase].[dbo].EMPLOYEE_TABLE where EmployeeID not in 
(select ManagerID from [Mydatabase].[dbo].ORG_UNIT where OrgUnitID = '5')and OrgUnitID = '5' 

这将返回两行。 并且还有另一个查询。

(select EmployeeID,FName from [Mydatabase].[dbo].EMPLOYEE_TABLE where EmployeeID in 
(select ManagerID from [Mydatabase].[dbo].ORG_UNIT where ParentTeamID = '5')) 

这将返回一行。

我想结合的结果,以最终得到三行..有没有办法做到这一点?

回答

3
SELECT EmployeeID, FName 
FROM EMPLOYEE_TABLE 
WHERE EmployeeID NOT IN 
     (
     SELECT ManagerID 
     FROM ORG_UNIT 
     WHERE OrgUnitID = '5' 
     ) 
     AND OrgUnitID = '5' 
UNION ALL 
SELECT EmployeeID, FName 
FROM EMPLOYEE_TABLE 
WHERE EmployeeID IN 
     (
     SELECT ManagerID 
     FROM ORG_UNIT 
     WHERE ParentTeamId = '5' 
     ) 

如果员工可以匹配这两个标准,与UNION使一个id不会被退回两次更换UNION ALL

+0

oops。 !我忘了..谢谢。 – scooby 2011-05-04 11:59:31

0

你可以同时执行它们吗?您可以将查询(具有匹配列)与“UNION ALL”子句结合起来。