SQL Server 2008 に、マトリックスに転置したいアンケート データがあります。
同じトピックに関する投稿をいくつか見ましたが、ピボットできません。
次の表が与えられます。
Question table
Answer table
Customer table
列:
[CustomerID]
, [QuestionName_1]
, .., [QuestionName_n]
<-動的な質問列数)
データ:
CustomerID
, Answer_1
, ..,Answer_n
列を取得するコード:
DECLARE @columns VARCHAR(8000)
SELECT @columns = COALESCE(@columns + ',[' + cast(QuestionName as varchar) + ']',
'[' + cast(QuestionName as varchar)+ ']')
FROM Answer A
INNER JOIN Question Q ON A.QuestionID = Q.QuestionID
INNER JOIN Customer C ON A.CustomerID = C.CustomerID
GROUP BY Q.QuestionName
SET @columns = '[CustomerID],' + @columns
DECLARE @query VARCHAR(8000)
SET @query = 'Some PIVOT query without aggregation'
EXECUTE(@query)
最初のクエリのアイデアは、動的列を使用したピボットから得られました。
それは可能で、ピボット クエリはどのようになりますか?
ps: 列の最大数でランキングを使用したくありません。
よろしく、
ミシェル