我正在将Access数据库移动到SQL Server 2012.在网上阅读了一些内容之后,我遇到了Transform和Pivot。我在这里发帖。如果可能的话,如何将以下查询作为视图进行迁移。
TRANSFORM First([TABLE1].EFE) AS FE
SELECT [TABLE1].COL1, First([TABLE1].EFE) AS [Total Of EFE]
FROM [TABLE1]
GROUP BY [TABLE1].COL1
PIVOT [TABLE1].COL3;
感谢您的帮助,我对Access功能非常陌生。
答案 0 :(得分:0)
我正在进行类似的转换,并发现如果您的FROM设计正确,可以在TSQL中避免使用Access中的“分组依据”。由于PIVOT需要进行整个表扫描,因此可能会发生意外情况(即如果您的FROM表具有TEXT列,它将完全失败,即使该列不是您查询的一部分!)
通过省略Group By语句而不是在FROM语句中使用子查询,我获得了最佳结果。另外,我使用MAX而不是First,如果你提供一些样本数据,这可能会有效。