Я пытаюсь построить подзапрос с несколькими столбцами. Например:Подзапрос с несколькими столбцами
--SELF JOIN:
WITH Employees AS
(
SELECT
e.EmployeeID, e.ManagerID, e.Title,
c.FirstName + ISNULL(' ' + c.MiddleName,'') + ' ' + c.LastName AS EmpName
FROM
Employee AS e
INNER JOIN
Contact AS c ON e.ContactID = c.ContactID
)
SELECT
emp.EmployeeID, emp.ManagerID, emp.EmpName, emp.Title AS EmpTitle,
mgr.EmpName as MgrName, mgr.Title as MgrTitle
FROM
Employees AS Emp
INNER JOIN
Employees AS Mgr ON Emp.ManagerID = Mgr.EmployeeID;
--2
WITH Employees AS
(
SELECT
e.EmployeeID, e.ManagerID, e.Title,
c.FirstName + ISNULL(' ' + c.MiddleName,'') + ' ' + c.LastName AS EmpName
FROM
Employee AS e
INNER JOIN
Contact AS c ON e.ContactID = c.ContactID
)
SELECT
EmployeeID, ManagerID, EmpName, Title
FROM
Employees
WHERE
EmployeeID IN (SELECT EmployeeID, er2.MaritalStatus
FROM Employees AS e
INNER JOIN AdventureWorks2012.HumanResources.Employee AS er2 ON e.ManagerID = er2.BusinessEntityID
WHERE er2.MaritalStatus = 'M');
Я хочу также показать MarialStatus
. Но я не могу сделать это таким образом, потому что я получаю ошибку:
Only one expression can be specified in the select list when the subquery is not introduced with EXISTS.
Но если я не могу сделать это с существует в подзапроса. Поэтому мой вопрос: каков правильный способ, чтобы я мог выбрать более одного столбца в подзапросе?
Спасибо
Почему бы кто-то использовать 'tempdb' для физических таблиц –
@Prdp выглядит OP экспериментирует с данными AdventureWorks. –
ОП? что вы имеете в виду с OP? – SavantCode