добавить результаты sql-запроса

#sql #sql-server

#sql #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'))
  

это возвращает одну строку.

я хочу объединить результаты так, чтобы получить в конечном итоге три строки .. есть ли способ сделать это???

Ответ №1:

 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 ALL на UNION , чтобы один из них id не возвращался дважды.

Ответ №2:

Можете ли вы выполнить их одновременно? Вы можете комбинировать запросы (с соответствующими столбцами) с помощью предложения «ОБЪЕДИНИТЬ ВСЕ«.