SQL Serverピボットテーブルを使用して、数えて合計数(合計6個)の列を合計できるようにしようとしています。ピボットテーブルの目的は、任意の数の本番サイトのオンラインアンケート結果を集計することです。目標、行動、失敗の3つの結果値を持つことができる6つの質問があります。私がしようとしているのは、それぞれの質問に対して、目標、行動、失敗の数を数え、それぞれについてこれを合計することです。たとえば、生産サイトAには2つのターゲット、2つのアクション、2つの失敗があります。数と合計のあるSQL Serverピボットテーブル
私の理解は、SQL Serverピボットテーブルがこの情報を提供し、ASP.Net ReportViewerに表示できるということです。以下は私のコードですが、それは動作していない、といくつかの専門家の助けを借りて行うことができます:
SELECT PRODUCTION_Site,
[Target],
[Action],
[Fail]
FROM
(SELECT Production_Site,
SUM(Coding),
SUM(Measurable),
SUM(Appearance),
SUM(Aroma),
SUM(Flavour),
SUM(Texture)
FROM t_Pqe_Grocery
GROUP BY Production_Site) AS T
PIVOT
(
COUNT(Coding) FOR Grocery_Packaging_And_Coding IN ([Target],[Action],[Fail])
COUNT(Measurable) FOR Grocery_Measurable IN ([Target],[Action],[Fail])
COUNT(Appearance) FOR Grocery_Appearance IN ([Target],[Action],[Fail])
COUNT(Aroma) FOR Grocery_Aroma IN ([Target],[Action],[Fail])
COUNT(Flavour) FOR Grocery_Flavour IN ([Target],[Action],[Fail])
COUNT(Texture) FOR Grocery_Texture IN ([Target],[Action],[Fail])) AS P
このラウンド方法はありますか、またはピボットテーブルは解決策ではないでしょうか?
表は、表内の
Production_Site,
Grocery_Packaging_And_Coding,
Grocery_Measurable,
Grocery_Appearance,
Grocery_Aroma,
Grocery_Flavour,
Grocery_Texture
データは、この希望される:
Site A, Target, Action, Fail, Target, Target, Target
Site B, Target, Action, Fail, Target, Target, Target
Site C, Target, Target, Target, Target, Target, Target
Site A, Target, Target, Target, Target, Target, Target
を私は探しています結果は
Production_Site | Target | Action | Fail
Site A 10 1 1
Site B 4 1 1
Site C 6 0 0
あなたがテーブル構造、いくつかのサンプルデータと、その後 'PIVOT'の望ましい結果を提供することができますか? – Taryn
私はこれをメインのデータに保存します - 詳細はオリジナルの質問を確認してください – Andy5
何が問題なのですか? SQL Fiddleの例を設定できますか? –