【发布时间】:2019-04-02 15:10:25
【问题描述】:
我有一个名为 assignment_answers 的表,它具有以下属性: assignment_answers_id、question_id 和 order。 order 是一个属性,可以取 0 到 9 之间的值。 我希望每个值都可以使其显示在不同的列中。例如,当订单的值为 0 时,我希望它显示在名为 number0 的列中。当它的值为 1 时,我希望它显示在名为 number1 的列中。
有人可以帮我吗?到目前为止,我已经尝试过了,但它不起作用:
SELECT (CASE WHEN assessment_answers.order = 0
THEN(
select aq.order as number0
from assessment_answers)
END)
(CASE WHEN assessment_answers.order = 1
THEN(
select aq.order as number1
from assessment_answers)
END)
FROM assessment_answers
我收到一条错误消息: 错误:“(”处或附近的语法错误 第 6 行:(评估问题时的情况。“订单”= 1
样本数据
assignment_answers_id question_id order
1 1 0
2 1 0
3 2 1
想要的输出:
assignment_answers_id question_id order0 order1
1 1 0 null
2 1 0 null
3 2 null 1
【问题讨论】:
-
@D-Shih 我更新了问题
-
好的我写了一个答案希望可以帮助你
标签: sql postgresql multiple-columns sql-manager