【发布时间】:2021-02-03 01:35:52
【问题描述】:
我有一个 4 列的表 SurveyID、QuestionID、PersonID、Response,其中包含大约 300 多个唯一问题(QuestionId)。我想将 QuestionID 拆分成列,以获得 300 多列。
with c as
(select Distinct QUESTION_ID from "SURVEY_PERSON_QUESTION_RESPONSE"
where SURVEYID = 'SURVEY1')
select *
from "SURVEY_PERSON_QUESTION_RESPONSE"
pivot(max(SURVEY_ID) for QUESTION_ID in c
我还尝试让它在 300 多个问题 ID 值中的几个上运行:
select * from SURVEY_PERSON_QUESTION_RESPONSE
pivot(max(SURVEY_ID) for QUESTION_ID in ("FirstName", "LastName")
我都得到了 SQL 编译错误:
位置 68 处的语法错误第 2 行意外''
【问题讨论】:
标签: sql snowflake-cloud-data-platform