Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
TSQL透视表语法_Sql_Sql Server_Sql Server 2008_Tsql_Pivot Table - Fatal编程技术网

TSQL透视表语法

TSQL透视表语法,sql,sql-server,sql-server-2008,tsql,pivot-table,Sql,Sql Server,Sql Server 2008,Tsql,Pivot Table,我尝试了一个透视表,如下所示: SELECT * FROM (SELECT [SurveyID] ,[SurveyQuestion] ,[SurveyQuestionID] ,[SequenceNumber] FROM [Succession_Tool].[dbo].[SurveyQuestions] ) X PIVOT ( SUM([SurveyID]) FOR [SurveyQuestion] IN (A,B,C)

我尝试了一个透视表,如下所示:

 SELECT * FROM 
(SELECT 
      [SurveyID]
      ,[SurveyQuestion]
      ,[SurveyQuestionID]
      ,[SequenceNumber]      
  FROM [Succession_Tool].[dbo].[SurveyQuestions]
) X
PIVOT
(
    SUM([SurveyID]) FOR [SurveyQuestion] IN (A,B,C)
) Z
我得到以下错误:

Msg 325, Level 15, State 1, Line 9
Incorrect syntax near 'PIVOT'. You may need to set the compatibility level of the current database to a higher value to enable this feature. See help for the SET COMPATIBILITY_LEVEL option of ALTER DATABASE.
我试图根据stackoverflow和其他地方(如或)的一些其他文章重写它,但它们都导致了上面相同的错误。有什么简单的东西我遗漏了吗?值得一提的是,我的兼容性级别是100,这是SQL Serer 2008,我不需要聚合,因为我只想将格式转换成CSV文件

更新:我在下面的说明中再次重写了查询

 WITH MYSurveyQuestions AS 
(SELECT 
      [SurveyID]
      ,[SurveyQuestion]
      ,[SurveyQuestionID]
      ,[SequenceNumber]      
  FROM [Succession_Tool].[dbo].[SurveyQuestions]
) 
SELECT * FROM MYSurveyQuestions
PIVOT   
(SUM(SURVEYID) FOR SurveyQuestion
    IN (A,B,C,D,E,F)) AS PVT
现在我得到以下错误:

Msg 102, Level 15, State 1, Line 11 Incorrect syntax near ')'.
不幸的是,这对我来说与第一个错误的含义相同,因为我仍然找不到错误(耸耸肩)…我觉得我离错误更近了。双击错误突出显示

(调查金额)调查问题


运行
SELECT@@VERSION
时会得到什么结果?Microsoft SQL Server 2008 R2(SP2)-10.50.4000.0(X64)2012年6月28日08:36:30版权所有(c)Windows NT 6.1上的Microsoft Corporation Enterprise Edition(64位)(构建7601:Service Pack 1)(虚拟机监控程序)@garethdb当前数据库和您正在选择的数据库都应该具有正确的兼容性级别。实际上我错了,只有当前数据库必须具有所需的兼容性级别。其他数据库(例如,在您的示例中,
sequence\u Tool
)不必。因此,正如消息所说,可能是当前数据库,不管它是什么,需要修复。所有数据都来自同一个数据库(继承工具),其级别为100