我有一个如下的注释表
id comment_id date
2 Null ...
3 2 ...
4 2 ...
5 Null ...
6 5 ...
7 Null ...
8 2 ...
9 5 ...
我想进行查询,可能是一个分组依据,以便输出如下所示
id comment_id date
2 Null ...
3 2 ...
4 2 ...
8 2 ...
5 Null ...
6 5 ...
9 5 ...
7 Null ...
comment_id基本上是指“ id”列。这就是对评论的答复。现在我想获取例如comment2的评论并回复comment2,即comment3,comment4和comment8分组在一起,它们应该按日期排序。 同样,comment5和对它的答复是comment6,comment9组合在一起,依此类推。 什么是查询?
答案 0 :(得分:3)
我认为这可以满足您的要求
select c.*
from comments c
order by coalesce(comment_id, id),
(case when comment_id is null then 1 else 2 end),
id;
按键执行以下操作: