2017-03-03 39 views
0

我构建了一个基于查询的报表,该查询将单个表中的多个值相加。这本质上是一份年迄今的报告,在这种情况下,农药收到了今年迄今为止。尽管该报告可作为快速参考检查,但需要将这些总计插入(复制/粘贴)到主Excel表格中,以保持正在运行的“可用余额”库存。当我从报告中导出总数到excel时,数据不是它需要的格式。它是水平的而不是垂直的。我可以复制数据,将其粘贴到Excel,转置它,然后将数据复制/粘贴到它所属的位置,但想知道查询是否可以在输出总数时进行转置。转置几个SUM查询的结果。这可能吗?

我尝试了交叉表法,但似乎适用于单个表,并且此查询显示列的总和。也许我使用交叉表方法做错了,但我尝试了很多不同的方法,并没有得到期望的结果。

这里的是SUM查询

SELECT 
    Agnique_MMF_Recieved.[SumOfAgnique MMF], 
    Altosid_30_Day_Recieved.[SumOfAltosid 30 Day], 
    Altosid_SR-20_Recieved.[SumOfAltosid Liquid SR-20], 
    Altosid_Pellets_Recieved.[SumOfAltosid Pellets],   
    Altosid_WSP_Recieved.[SumOfAltosid WSP], 
    Altosid_XR_Recieved.[SumOfAltosid XR], 
    Altosid_XRG_Recieved.[SumOfAltosid XRG], 
    Aquabac_200G_Recieved.[SumOfAquabac 200G], 
    BVA_2_Recieved.[SumOfBVA 2 Oil], 
    Four_Star_BTI_Received.[SumOfFourStar BTI], 
    Golden_Bear_Recieved.[SumOfGolden Bear], 
    Metalarv_S-9_Recieved.[SumOfMetalarv S-9], 
    Sustain_MGB_Recieved.[SumOfSustain MGB], 
    Vectobac_GS_Received.[SumOfVectobac - GS], 
    Vectobac_12AS_Recieved.[SumOfVectobac 12AS] 
FROM 
    Agnique_MMF_Recieved, 
    Altosid_30_Day_Recieved, 
    Altosid_Pellets_Recieved, 
    Altosid_SR-20_Recieved, 
    Altosid_WSP_Recieved, 
    Altosid_XR_Recieved, 
    Altosid_XRG_Recieved, 
    Aquabac_200G_Recieved, 
    BVA_2_Recieved, 
    Four_Star_BTI_Received, 
    Golden_Bear_Recieved, 
    Metalarv_S-9_Recieved, 
    Sustain_MGB_Recieved, 
    Vectobac_12AS_Recieved, 
    Vectobac_GS_Received; 

我想数据结束看起来像

SumofAgniqueMMF作为行头和旁边有一个总数列从和值。

无论如何,这是可能的吗?谢谢!

+1

你应该使用一个明确的交叉连接,而不是表名的早已过时的逗号分隔的列表。 –

回答

0

我可以假设您的FROM子句中的每个表都是单记录表/视图,只有一个SUM?

如果这样:

SELECT 'SumOfAgnique MMF' AS [Description], 
    Agnique_MMF_Recieved.[SumOfAgnique MMF] AS [Sum] 
    FROM [Agnique_MMF_Recieved] 
UNION ALL 
SELECT 'SumOfAltosid 30 Day' AS [Description], 
    Altosid_30_Day_Recieved.[SumOfAltosid 30 Day] AS [SUM] 
    FROM [Altosid_30_Day_Recieved] 
...etc 
+0

该死的你们好!这有效,@Tim。我的设施经理和总监将非常高兴您的存在!周末愉快,再次感谢! – JCP1975

+0

原始语句有效,但是当我尝试添加更多内容时,我一直在从FROM子句中获取“语法错误”。我甚至复制了你的数据两次,仍然有错误。有任何想法吗? – JCP1975

+0

每个'SELECT'语句之间都有'UNION ALL',你想念那个吗? – Tim

0

考虑:吨==>的表中,f ==>的字段中,r ==>的结果集。

select r1.s1, r2.s2 ... rn.sn from ( (select sum(f1) as s1 from t1) r1,
(select sum(f2) as s2 from t2) r2,
... ... (select sum(fn) as sn from tn) rn
)