我有问题正确地查询这种需求。我希望有人能清醒过来。
假设我有这三个表:
A-表
Column1|Column2
B-表
Column3|Column4
C-表
Column5|Column6
首先,这些表A和B应在A-TABLE.Column1 = B-TABLE.Column3
时保持连接状态。此表也应该使用WHERE子句进行过滤,因为我不需要所有行。
然后,有必要按此新连接表进行分组,以便在此之后我得到包含SUM()
B-TABLE.Column3
A-TABLE.Column1
分组的表。
所以,在此之后,我应该将表连接到C-TABLE,以便C-TABLE.Column5 = A-TABLE.Column1
。
我希望有人可以帮助我实现目标吗?
答案 0 :(得分: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