2013-03-27 56 views
0

我有问题为这种需求做适当的查询。我希望有人能清楚我的想法。加入,在T-SQL中再次加入并加入

比方说,我有这三个表:

A-表

Column1|Column2 

B-表

Column3|Column4 

C-表

Column5|Column6 

首先这些表A和B应该留下jo当时是​​。这个表也应该用WHERE子句过滤,因为我不需要所有的行。

然后,有必要通过这个新的加入表进行分组,以便在那之后,我得到包含SUM()B-TABLE.Column3的表格,分组为A-TABLE.Column1

因此,在此之后,我应该将表加入C-TABLE以便C-TABLE.Column5 = A-TABLE.Column1

我希望有人能帮助我实现我的目标吗?

+0

您可以发布为每个表,然后将查询所需的结果一些示例数据?如果我们可以看到您对查询进行的任何尝试,这也会很有帮助。 – Taryn 2013-03-27 18:55:38

回答

1

这又通过您的规格:

;With SomeCTE As 
(
    Select A-TABLE.Column1 
     , Sum(C-TABLE.Column3) As SomeSum 
     From C-TABLE 
     Left Join A-TABLE On C-TABLE.Column3 = A-TABLE.Column1 
    --Where ... 
    Group By A-TABLE.Column1 
) 
Select Column1 
    , Column5 
    , SomeSum 
    From SomeCTE 
Inner Join C-TABLE On SomeCTE.Column1 = C-TABLE.Column5 
+0

非常感谢Dominic。这个解决方案帮助我归档了我正在寻找的东西。 – WonderMike 2013-03-28 06:10:58