Sql MS Access中的列到行

Sql MS Access中的列到行,sql,ms-access,rows,Sql,Ms Access,Rows,我正在尝试在MS Access中创建一个查询,以最终获取以下内容的输出: Name Cat 1 Cat 2 Cat 3 Cat 4 Cat 5 Cat 6 Joe 2 12 10 1 0 0 Bob 0 0 0 0 0 0 Jody 2 4 3 1 2

我正在尝试在MS Access中创建一个查询,以最终获取以下内容的输出:

Name        Cat 1   Cat 2   Cat 3   Cat 4   Cat 5   Cat 6
Joe         2       12      10      1       0       0
Bob         0       0       0       0       0       0
Jody        2       4       3       1       2       0
Harry       0       4       14      0       2       0
对这样的事情:

Name        Joe     Bob     Jody    Harry
Cat 1       2       0       2       0
Cat 2       12      0       4       4
Cat 3       10      0       3       14
这可能吗

编辑

这是表格当前的方式:

Name    X1 X2A   X2B X2C X3A X3B X3C X4 X5 
Joe     1  5     0   1   1   5   6   0  0
Bob     2  7     0   2   1   4   2   1  9 
Billy   0  8     0   3   1   3   1   0  9 
这就是我想要得到的:

Name     Joe                  Bob    Billy 
X1       1                     2         0 
X2 (sum of X2A/X2B/X2C) 6      9         11 
X3 (sum of X3A/X3B/X3C) 12     7         5 
X4       0                     1         0 
X5       0                     9         9

首先创建联合查询以规范化表,然后创建交叉表以显示数据:

SELECT [Name], "Cat 1" As Cat, [Cat 1] As CatVal FROM Table
UNION ALL
SELECT [Name], "Cat 2" As Cat, [Cat 2] As CatVal FROM Table
<...>
假设联合查询是QueryX:

TRANSFORM First(QueryX.CatVal) AS FirstOfCatVal
SELECT QueryX.Cat
FROM QueryX
GROUP BY QueryX.Cat
PIVOT QueryX.Name;

我有同样的问题,但唯一的问题是,我当前所做的查询显示的输出几乎与上面所示的原始表完全相同……我如何在您显示的union sql中使用我的查询?我不明白您的意思。我已经给出了一个使用示例中显示的字段名的示例。如果你遵循了我上面的例子,你就不能以你的例子结束。请发布您正在使用的SQL。这是我正在使用的SQL…我想对其应用您的联合查询:选择[Authorizer Name],将[Q1A-CD1]和[Q2A-CD2A]合并为[Category 1],将[Q2A-CD2A]合并为[Q8A-CD2A]+[Q10A-CD2A]+[CTS A accurate-CD2A]+[e-accurate-CD2A]和[Q7A-CD2B]+[Q9A-CD2B]+[Q11A-CD 2B]+[CTS A程序-CD 2B]+[e-A程序-CD 2B]作为[第3类],Sum[Q4A-CD 3]作为[第4类],Sum[Q5A-CD 4]作为[第5类],Sum[Q12A-CD 5]作为[第6类]来自[审查结果],其中[审查结果]。[授权人姓名]=1组由[审查结果]。[授权人姓名];当您不确定自己在做什么时,虚构的数据是一个坏主意。您的示例与您的数据完全不同,需要完全不同的答案。表中的真实数据是什么,而不是查询,您希望得到什么?只需选择一组数据就足够了。那么,您能告诉我为什么示例数据中的字段名是a吗您与查询中的字段名完全不同?您好,很抱歉,我在复制和粘贴到正确的表格式时遇到问题。我发送给您的查询引用了我数据库中的实际字段/列。但是,真实数据集包含敏感信息。因此,我起草了模拟表,如您所见。表和查询不相关我们互相交流。希望这有帮助吗?让我猜猜,你已经发送了一个问卷类型的表格,上面有问题?你需要在表格级别开始规范化。给我几分钟。你完全正确!最初设计数据库的人没有规范化。再次感谢你自己,创建一个规范化的表格在下面的联合查询中使用make table并对其进行进一步分析。
SELECT [Name], "X1" As Cat, [X1] As CatVal FROM Table
UNION ALL
SELECT [Name], "X2" As Cat, Nz([X2A],0)+Nz([X2B],0)+Nz([X2C],0) As CatVal 
   FROM Table
UNION ALL
SELECT [Name], "X3" As Cat, Nz([X3A],0)+Nz([X3B],0)+Nz([X3C],0) As CatVal 
   FROM Table
UNION ALL
SELECT [Name], "X4" As Cat, [X4] As CatVal FROM Table
UNION ALL
SELECT [Name], "X5" As Cat, [X5] As CatVal FROM Table
TRANSFORM First(QueryX.CatVal) AS FirstOfCatVal
SELECT QueryX.Cat
FROM QueryX
GROUP BY QueryX.Cat
PIVOT QueryX.Name;