在sql中,一个查询获取一列,其他查询获取另一列,依此类推,我想在一个表中将这些多列显示为多列。
例如:
Query1 gives column 'EmployeeId' .........
Query2 gives column 'EmployeeName' .......
Query3 gives column 'EmployeeAddress'
现在我想在一个表中显示这三列
table1有列'EmployeeId', 'EmployeeName' and 'EmployeeAddress'
由于在两个查询中,ORDER BY EmployeeId
按递增顺序排列,因此在最终表(此处为table1)中,它给出了相应的Id,名称和地址。
基本上我需要在一个表中基于EmployeeId组合两个结果集。
答案 0 :(得分:1)
如果没有查询,我不知道你有多少表或它们如何链接。但这听起来需要将子查询连接在一起以获得您所追求的结果。以下示例
select emp.empId, ea.EmployeeAddress, en.EmployeeName
from emp
left join
(
select empId, EmployeeAddress
from EmpAddress
) ea on ea.empid = emp.empid
left join
(
select empId, EmployeeName
from empNames
) en on en.empId = emp.EmpId
order by emp.empId