以特定格式显示来自多个表的数据

时间:2016-03-22 11:58:16

标签: sql reporting-services

这是一个详细的问题:我有几个表有一些共同的列(TOS列)所以我需要做的是看到以下列格式显示的数据:

enter image description here

    TOS         Percentage
                100.00%
default (DSCP 0)61.74%
af33 (DSCP 30)  15.44%
af31 (DSCP 26)  13.85%
af11 (DSCP 10)  4.63%
ef (DSCP 46)    3.72%
cs6 (DSCP 48)   0.23%
cs4 (DSCP 32)   0.20%
cs3 (DSCP 24)   0.11%
af21 (DSCP 18)  0.05%
af41 (DSCP 34)  0.03%
                0.02%

这是表B中的数据:

    TOS        Percentage
                100.00%
default (DSCP 0)61.37%
af11 (DSCP 10)  15.22%
af33 (DSCP 30)  11.49%
af31 (DSCP 26)  8.86%
ef (DSCP 46)    1.91%
af41 (DSCP 34)  0.70%
cs4 (DSCP 32)   0.15%
af12 (DSCP 12)  0.12%
cs3 (DSCP 24)   0.06%
af21 (DSCP 18)  0.05%
                0.07%

我需要的是根据上图所格式化的数据。我提出了以下查询,但它似乎重复了很多数据:

SELECT       
    SiteA.TOS AS RSite A,
    SiteA.Percentage, 
    SiteB.TOS AS Site B, 
    SiteB.Percentage 
FROM            
    SiteA 
CROSS JOIN
    SiteB

如果我没有正确解释自己,请告诉我,如果问题没有正确发布,请告诉我,以及我对stackoverflow的全新内容!

1 个答案:

答案 0 :(得分:1)

我认为您打算使用INNER JOIN:

SELECT SiteA.TOS AS RSite A,
       SiteA.Percentage, 
       SiteB.Percentage 
FROM  SiteA 
INNER JOIN  SiteB
 ON(SiteA.TOS = SiteB.TOS)

或者使用左连接,以防只有一个表上有数据

SELECT SiteA.TOS AS RSite A,
       SiteA.Percentage, 
       SiteB.Percentage 
FROM  SiteA 
LEFT JOIN  SiteB
 ON(SiteA.TOS = SiteB.TOS)