0

我有一个名为“答案”的表,其中包含四列,其中添加具有正面和负面排名的答案,我想检索具有不同别名的答案,以获得正面排名的答案和负面排名的答案。有没有办法用两个不同的别名检索同一列?

id  answer  rank  question_id

1   Yes      1       1
2   No       2       1
3   True    -2       2
4   False   -1       2

我想以逗号分隔列表的形式得到这个答案我已经尝试过但没有成功。

SELECT CASE WHEN a.rank > 0 THEN GROUP_CONCAT(a.answer)  END AS answer,
       CASE WHEN a.rank < 0 THEN GROUP_CONCAT(a.answer)  END AS matrix
FROM answers a.
4

2 回答 2

1
select group_concat(case when rank > 0 then answer end) as pos_answers,
       group_concat(case when rank < 0 then answer end) as neg_answers
from answers
于 2013-09-30T10:23:46.153 回答
1

您可以尝试以下操作:

SELECT GROUP_CONCAT(IF(rank>0,answer,NULL)) as positive_ans, GROUP_CONCAT(IF(rank<0,answer,NULL)) as negative_ans FROM answers
于 2013-09-30T10:28:24.650 回答