我有一个名为 assignment_answers 的表,它具有以下属性: assignment_answers_id、 question_id 和 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 行或附近的语法错误:(CASE WHENassessment_questions."order" = 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