おはようございます、
このクエリに問題があります:
SELECT
P.txt_nome AS Pergunta,
IP.nome AS Resposta,
COUNT(*) AS Qtd
FROM
tb_resposta_formulario RF
INNER JOIN formularios F ON
F.id_formulario = RF.id_formulario
INNER JOIN tb_pergunta P ON
P.id_pergunta = RF.id_pergunta
INNER JOIN tb_resposta_formulario_combo RFC ON
RFC.id_resposta_formulario = RF.id_resposta_formulario
INNER JOIN itens_perguntas IP ON
IP.id_item_pergunta = RFC.id_item_pergunta
WHERE
RF.id_formulario = 2
GROUP BY
P.txt_nome,
IP.nome
これは、このクエリの実際の結果です。
|ペルグンタ| レスポスタ |Qtd|
|製品 |コンボ 1MB | 3 |
|製品 |コンボ 2MB | 5 |
|製品 |コンボ 4MB | 1 |
|製品 |コンボ 6MB | 1 |
|製品 |コンボ 8MB | 4 |
|Região |MG | 3 |
|地域 |PR | 2 |
|Região |RJ | 3 |
|Região |SC | 1 |
|地域 |SP | 5 |
これらは私が期待していた結果です:
|製品 | レギオン |Qtd|
|コンボ 1MB | MG | 3 |
|コンボ 2MB | SP | 5 |
|コンボ 4MB | SC | SC | 1 |
|コンボ 6MB | RJ | 1 |
|コンボ8MB | 広報 | 2 |
PIVOT および UNPIVOT 演算子を使用していますが、満足のいく結果が得られません。
誰かがすでにこの状況に直面したことがありますか? 提供できる洞察はありますか?
私はすでにこれらのリンクを分析しました:
- SQL Server 2005 で不明な列数がピボットされる
- SQL Server 2000 で一連の行を列として転置する
- SQL Server 2005、列を行に変換
- ピボット テーブルと連結列
- SQL 2005 の PIVOT
アット、ペレグリーニ