2016-12-05 21 views
0

私はPivotをSQLで使っていて、何か問題があった。SQLピボット "キーワード 'PIVOT'の近くに構文が正しくありません。"

私は選択クエリにピボットテーブルを埋め込もうとするとエラーが発生しますが、何時間も何度も読んでいてもわかりません。

私は、各ダッシュボードごとに1つずつ、クエリに複数のピボットテーブル(5)を含むダッシュボード-dbを作成しています。これは可能ですか?私は取得しています

エラーは次のとおりです。キーワード 'PIVOT' 近く

メッセージ156、レベル15、状態1、行38 正しくない構文。

私のクエリは、この

SELECT 
    /* Query for dashboard 1 **/ 
    [ProjectUID] AS [Project UID], 
    [ + 8 Regular selects not related to the pivot ] 

    /* Query for dashboard 2 **/ 
    [...] 

     /* Query for dashboard 3 **/ 
    [...] 

     /* Dashboard WOWs */ 
    (SELECT * FROM [PB_Customer]) 
    PIVOT 
     (
      COUNT (MValue) 
      for MValue 
       in (
       [Customer], 
       [MNeeds], 
       [Bousa], 
       [backbook] 
       ) 
     ) AS pvt_table_wow 

    FROM [Table 1], [Table 2], [Table 3] 

    WHERE Table1.ProjectUID=.Table2PROJECTUID 
      AND Table2.[Ping] IS NOT NULL 
      AND Table2.[Bousa] NOT IN ('0') 
      AND Table1.ProjectUID=Table3.PUID; 

のように見える誰かが私を助けることができますか?

+0

にサブクエリ

変更

(SELECT * FROM [PB_Customer]) PIVOT 

の別名なければなりません。列名とエイリアスを指定する必要があります - これを見てください - > https://technet.microsoft.com/en-us/library/ms177410%28v=sql.105%29.aspx – Hogan

+0

/*ダッシュボードWOWs * /の前にFROMがあるはずです。具体的には、whereはクエリに依存します。これをチェックしてください。 https://msdn.microsoft.com/en-us/library/ms177410.aspx – DVT

+0

サブクエリの上位にエイリアシングがありませんが、それはサブクエリであるとは言えませんピボットの下に別のFROM句とWHERE句があるので...あなたのコードをすべて投稿してください。 – scsimon

答えて

0

は、あなたが `` *ピボットで使用することはできません

(SELECT * FROM [PB_Customer]) c PIVOT 
関連する問題