如何从一个结果中的两个不同表中获取行数?

时间:2014-03-30 06:55:26

标签: sql-server tsql

我有两个表,我需要从中提取属于同一ID的行数。

Orders Table
Positions Table

我正在尝试构建一个查询,它将根据公共ID从两个表中获取匹配行的数量。我不是在寻找一个会返回所有匹配行的结果集,我只需要返回一个带有匹配行数的值。

我已经尝试了下一个查询,但我知道当它返回50时实际上有48行。

 select Isnull(CntPos,0)+IsNull(CntOrd,0)
 from  (select CID
             ,Count(*) CntPos  
        from  [Serv].[Trade].[Position] 
        Group By CID
       ) Pos
 Full join (select CID
                ,Count(*) CntOrd  
            from  [Serv].[Stocks].[Orders] 
            Group By CID
           ) Ord 
     on Ord.[CID] = Pos.CID
 WHERE Ord.CID=19556

0 个答案:

没有答案