admin

MySQL复杂的多列排序

sql

我有下面的MySQL数据库表充满数据:

|id|parentId|position
|20|NULL    |1
|21|NULL    |2
|22|NULL    |3
|23|21      |1
|24|21      |2

是否有可能对其进行排序以获得最终结果,如下所示:

|id|parentId|position
|20|NULL    |1
|21|NULL    |2
|23|21      |1
|24|21      |2
|22|NULL    |3

您可能会注意到,父级内部的位置从1开始。

因此,我希望它按三列排序:id,parentId和位置。有任何想法吗?


阅读 204

收藏
2021-07-01

共1个答案

admin

我想你想要什么?

ORDER BY IFNULL(parentId, id), parentId, position
2021-07-01