我需要帮助来得出结果如下:
表A
Metric
AA
BB
FF
TableB
Mth AA BB CC DD EE
Jan a1 b1 c1 d1 e1
Feb a2 b2 c2 d2 e2
Mar a3 b3 c3 d3 e3
预期结果
Jan AA a1
Jan BB b1
Jan FF NULL
Feb AA a2
Feb BB b2
Feb FF NULL
Mar AA a3
Mar BB b3
Mar FF NULL
基本上,我想根据 TableB 中的指标从 TableA 中选择记录,如果列不可用则显示NULL。
我想出了一些想法,但仍在努力,很快就会发布更多细节。感谢。
答案 0 :(得分:1)
Select Tbl1.Mth,Tbl1.Metric,MthMetric
From
(
select distinct Mth ,Metric
from TableB
cross join TableA
)As Tbl1
Left Join
(
SELECT u.MthMetric, u.ColVal,u.Mth --into ##TempDt
FROM TableB s
unpivot( MthMetric
FOR ColVal IN (AA,BB)) AS u
)As Tbl2
On Tbl1.Mth=Tbl2.Mth and Tbl1.Metric=Tbl2.ColVal
Order by Tbl1.Mth,Tbl1.Metric