0

在sql中,一个查询获取一列,另一个查询获取另一列,依此类推,我想将一个表中的这些多列显示为多列。

例如:

Query1 gives column 'EmployeeId' .........
Query2 gives column 'EmployeeName' .......
Query3 gives column 'EmployeeAddress'

现在我想在一个表中显示这三列,比如 table1 有列'EmployeeId', 'EmployeeName' and 'EmployeeAddress'

由于在两个查询中它都是ORDER BY EmployeeId按递增顺序排列的,所以在最终表(此处为 table1)中,它给出了相应的 ID、名称和地址。

基本上我需要根据 EmployeeId 将两个结果集组合在一个表中。

4

1 回答 1

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
于 2012-10-31T13:18:17.333 回答