访问SQL - 根据不同的条件选择相同的列两次

时间:2017-10-09 09:16:00

标签: sql ms-access

我现在已经在下面的桌子上挣扎了一段时间。希望任何人都可以帮助我。

Item  Type  Value
A     X     2
B     X     3
C     X     4
D     X     5
A     Y     0.1
B     Y     0.3
C     Y     0.4
D     Y     0.6

我希望看到的结果是:

Item  X     Y
A     2     0.1
B     3     0.3
C     4     0.4
D     5     0.6

是否可以在一个查询中修复此问题? 我尝试了Union查询和IIF语句,但没有一个能给我想要的结果。另一个选择可能是在多个查询中将其拆分,但我宁愿一次完成。

期待任何答案。

非常感谢!

最佳,

Mathijs

1 个答案:

答案 0 :(得分:1)

这是Crosstab查询的工作。

TRANSFORM Max(Table1.Valu) AS MaxOfValu
SELECT Table1.item
FROM Table1
GROUP BY Table1.item
PIVOT Table1.type;

ps:Value是保留字,不能用作字段名。我也绝不会使用TypeItem