子查询中的主要查询结果

时间:2018-06-27 12:10:11

标签: sql

如何将主查询结果集的引用用作子查询中的源表

表A,表C

Select 
       (Select * From a) 
  From 
       (Select tabA.* 
          From A tabA 
          Join C tabC 
            On tabA.id = tabC.id) as a

我有无效的对象,这里有错误

2 个答案:

答案 0 :(得分:1)

大概,您需要一个公用表表达式(CTE):

with a as (
      select tabA.*
      from A tabA Join
           C tabC
           on tabA.id = tabC.id
     )
Select (Select * from a)
From a;

也就是说,您的查询没有任何意义。标量子查询可能由于行数或列数而返回错误。

答案 1 :(得分:0)

如果您使用sqlserver,则根据以下查询修改了查询。

选择*从 (从A.EmployeeID = B.EmployeeID上的TableA A内部联接TableB B中选择A. *)a