gpt4 book ai didi

MySQL 查询 : Order childs after their parents

转载 作者:行者123 更新时间:2023-11-29 14:44:27 25 4
gpt4 key购买 nike

我有一张 table :

enter image description here

我可以用单个查询组织它来显示:

enter image description here

谢谢。

最佳答案

是的,你可以做这种 SCSS :

ORDER BY CASE parentid WHEN 0 THEN id ELSE parentid END ASC, id ASC

我说这是一种 SCSS ,因为它需要对每一行进行计算。它不会有性能。解决这个问题的更好方法是使用更好的数据模型。您还可以使用 Nested Set Model 来存储,而不是仅存储父 ID。 。所以基本上你的数据模型看起来像:

id | parentid | name   | left | right
1 | 0 | Peter | 1 | 4
2 | 0 | Marcus | 5 | 8
3 | 1 | Monica | 2 | 3
4 | 2 | Sergei | 6 | 7

现在,您的订单将减少为:

ORDER BY `left` ASC

这会做完全相同的事情。阅读那篇嵌套的文章。如果您需要过滤或排序数据,那么有比仅使用parentid更好的方法来解决问题......

关于MySQL 查询 : Order childs after their parents,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7275080/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com