如标题中所提到的,我想加入2个与另一个表具有相同列的表,这是架构:DATABASE Architecture
每个“transac”表代表一个月度交易,实际上我有2个“transac”表,其中包含2017年09月和2017年的2017年交易,它们与每个国家/地区的国家和地区有关。
我的要求是计算每张表“transac_EUR_M09_17”&的单位总和。 “transac_EUR_M10_17”按国家和地区分组,以便按月按国家和地区分列销售额(M09和M10 2017)。
我尝试了以下请求,但总和非常高,我认为这是一个关节问题或对架构的误解,这里是SQL SERVER请求:
SELECT
cntry.country,rg.nom_region,SUM(tr09 .unite) as "sum units
M09 ",SUM(tr10 .unite) as "sum units M10 "
FROM
[Backup].[dbo].[transac_EUR_M09_17] as tr09
JOIN
[Backup].[dbo].[COUNTRY] as cntry ON tr09.[cod_country] =
cntry.[cod_country] JOIN [Backup].[dbo].Region as rg
ON rg.[cod_country] = cntry.[cod_country] JOIN
[Backup].[dbo].[transac_EUR_M10_17] as tr10 ON tr10.[cod_country] =
cntry.[cod_country]
where tr09 .cod_region = rg.cod_region and tr10 .cod_region = rg.cod_region
Group BY cntry.country,rg.nom_region ORDER BY SUM(tr09 .unite) asc
结果: Query Result
正如您所看到的,数字非常高。
我找到了一个部分解决方案,它是自己提取每个表,但它不是一个相关的解决方案,尤其是当我添加大量的transac表时。
我如何克服这个问题,这样我就可以从transac表中提取尽可能多的总和?