【发布时间】:2022-01-12 22:18:45
【问题描述】:
假设我有下表
| id | category_name | parent_id |
|---|---|---|
| 1 | movies | 0 |
| 2 | technology | 0 |
| 3 | sci-fiction | 1 |
| 4 | romantic | 1 |
| 5 | documentries | 0 |
| 6 | space | 3 |
| 7 | heros | 3 |
| 8 | saturn | 6 |
| 9 | mars | 6 |
| 10 | black holes | 6 |
我想要的是以每个父母都跟着他的孩子这样的方式订购这些物品:
| id | category_name | parent_id |
|---|---|---|
| 1 | movies | 0 |
| 3 | sci-fiction | 1 |
| 6 | space | 3 |
| 8 | saturn | 6 |
| 9 | mars | 6 |
| 7 | heros | 3 |
| 4 | romantic | 1 |
| 2 | technology | 0 |
| 5 | documentries | 0 |
| 10 | black holes | 6 |
如何编写查询来执行这样的操作?
【问题讨论】:
-
根据问题指南,请展示您的尝试并告诉我们您发现了什么(在本网站或其他地方)以及为什么它不能满足您的需求。
-
我的问题是我的祖先数量不定,即电影>>科幻>>太空>>土星>>另一个类别>>虚拟类别等...
-
递归 CTE??
-
没有这种方法在 order by statement 旁边使用 case,但是如果我只有子类别,那么这个方法有效,然后子子类别将不会正确排序
标签: sql mariadb hierarchical-data mariasql mariadb-10.1