1

転置/ピボット (SQL Server 2008) を使用しようとしていますが、MAX 関数も TRANSFORM も機能しません。これを別の方法で達成する方法、または MSEXCEL を使用する方法はありますか?

これは私が持っているものです

`

<table>
<tr><td>Name</td><td>Question</td><td>Answer</td></tr>
<tr><td>Respondent 1</td><td>Question 1</td><td>Answer</td></tr>
<tr><td>Respondent 1</td><td>Question 2</td><td>Answer</td></tr>
<tr><td>Respondent 1</td><td>Question 3</td><td>Answer</td></tr>
<tr><td>Respondent 1</td><td>Question 4</td><td>Answer</td></tr>
<tr><td>Respondent 1</td><td>Question 5</td><td>Answer</td></tr>
<tr><td>Respondent 2</td><td>Question 1</td><td>Answer</td></tr>
<tr><td>Respondent 2</td><td>Question 2</td><td>Answer</td></tr>
<tr><td>Respondent 2</td><td>Question 3</td><td>Answer</td></tr>
<tr><td>Respondent 2</td><td>Question 4</td><td>Answer</td></tr>
<tr><td>Respondent 2</td><td>Question 5</td><td>Answer</td></tr>
<tr><td>Respondent 3</td><td>Question 1</td><td>Answer</td></tr>
<tr><td>Respondent 3</td><td>Question 2</td><td>Answer</td></tr>
<tr><td>Respondent 3</td><td>Question 3</td><td>Answer</td></tr>
<tr><td>Respondent 3</td><td>Question 4</td><td>Answer</td></tr>
<tr><td>Respondent 3</td><td>Question 5</td><td>Answer</td></tr>
<tr><td></td></tr>
</table>

`

そして、私は次のようになりたいと思います:

`

<table>
<tr><td>Name</td><td>Question 1</td><td>Question 2</td><td>Question 3</td><td>Question 4</td><td>Question 5</td></tr>
<tr><td>Respondent 1</td><td>text</td><td>text</td><td>text</td><td>text</td><td>text</td></tr>
<tr><td>Respondent 2</td><td>text</td><td>text</td><td>text</td><td>text</td><td>text</td></tr>
<tr><td>Respondent 3</td><td>text</td><td>text</td><td>text</td><td>text</td><td>text</td></tr>
</table>

`

これは私が試して失敗したクエリです: SELECT Respondent, MAX(CASE WHEN Question='Question 1' THEN Answer ELSE NULL END) AS 'Question 1', MAX(CASE WHEN Question='Question 2' THEN Answer ELSE NULL END ) AS 'Question 2' FROM Table GROUP BY Respondent

Excelがおそらく最良のソリューションになると思いますが、何かアイデアはありますか?

4

1 に答える 1

1

SQLでピボットテーブルを使用できます:

Select * from tablename
Pivot( max(Answer) for Question in ([Question1], [Question2],[Question3],[Question4],[Question5])) as pivotTable
于 2013-11-08T19:33:22.133 に答える