这个有点棘手。由于table1中的某些值将与 table2中的列标题和记录按ID分组,我尝试使用以下查询但失败了:
TRANSFORM Persons
SELECT ID, City, Country
FROM Table1
GROUP BY ID, City, Country
PIVOT Group;
答案 0 :(得分:2)
这只是一个简单的转折点。我没有看到任何阻碍的事情。
类似的问题是" Convert Rows to columns using 'Pivot' in SQL Server"。
但我宁愿阅读有关使用VB和Access进行旋转的内容。 在MSDN上,您可以找到TRANSFORM Statement。
答案 1 :(得分:1)
我刚试过这个SQL。
TRANSFORM Count(Grouping.Country) AS CountOfCountry
SELECT ID, City, Country
FROM Grouping
GROUP BY ID,City,Country
PIVOT Group;
我认为你能做的就是数数,所以最终的结果会与你在你的例子中展示的结果略有不同。我可能是错的,但我认为这就像你能得到的那样接近。
答案 2 :(得分:1)
我认为你几乎就在那里 - 你缺少TRANSFORM子句的聚合函数(在你的情况下是SUM),并且TRANSFORM Sum(Persons)
SELECT ID, City, Country
FROM Table1
GROUP BY ID, City, Country
PIVOT [Group];
是一个保留字,它应该在[square]中括号]。
{{1}}