我试图建立一个链式的项目列表,其中第一个项目的parent_id = 0,而其他项目应按最后一个元素的id与其parent_id相关的方式排序
这是预期的结果:
| id | parent_id | |----|-----------| | 9 | 0 | | 2 | 9 | | 3 | 2 | | 14 | 3 | | 5 | 14 |
我该怎么做这种ORDER BY子句?目前我在
parent_id = 0 desc, parent_id desc
但是输出这个是错误的,当然,因为它不依赖于最后一个ID,它只是运行parent_id的desc排序:
| id | parent_id | |----|-----------| | 9 | 0 | | 5 | 14 | | 2 | 9 | | 14 | 3 | | 3 | 2 |
提前致谢。
答案 0 :(得分:0)
订购方:
'parent_id = 0 desc, COALESCE(id, parent_id), id'
似乎解决了我的问题。