【发布时间】:2023-03-22 16:39:01
【问题描述】:
在运行 PIVOT 命令(Crosstab 查询)后,我真的需要您的帮助才能在我的表中添加一个单独的新行。
我的目标是计算每个 [Request Types] 的列总数,并将该列的总和插入到表格底部的新行中。
这对我来说就像火箭科学,超出了我对 SQL 语言/领域的能力和知识。
这是我表中数据的快速截图:
这是运行 TableA 的 CrossTab 查询后从表中捕获的数据的快速屏幕截图
TRANSFORM Count([Division]) AS CountOfDivision
SELECT [Branch], [Division]
FROM TableA
GROUP BY [Branch], [Division]
PIVOT [Request Type]
这是我想要完成的预期结果/预期结果:
【问题讨论】:
-
不泄露答案,给你个提示:UNION
-
我完全迷失了,准备把我所有的头发都拔掉。我已经在谷歌上搜索了几个小时来寻找答案。这甚至可以做到吗?你会将 Union 查询放在哪里,它是如何适应的?
-
是的,可以做到。在此处搜索 UNION 或 Google。它的工作原理是采用两个不同的查询(具有相同的列 important)并将第二个查询放在第一个查询的底部。
-
一旦 [Request Types] 被转置为行,Union 将如何计算列数?
-
因为您将在底部合并相同的查询 - 但它将是带有父聚合的子查询...我仅限于使用 SQL Server,而且我编写不同的方法来完成此任务,但使用相同的 UNION 思想......实际上有许多不同的方法可以做到这一点。
标签: sql database ms-access pivot crosstab