gpt4 book ai didi

mysql - 如何在 MySQL 中按父子进行 SELECT 和排序

转载 作者:行者123 更新时间:2023-11-29 21:31:21 24 4
gpt4 key购买 nike

我有一个看起来像这样的表格

id  parent_id   name    address     email   telephone
2 NULL name address email phone
3 NULL name2 address2 email2 phone2
4 NULL name3 address3 email3 phone3
5 NULL name4 address4 email4 phone4
6 NULL name6 email6 phone6
7 5 name7 email7 phone7
8 NULL name8 email8 phone8

我想对其进行选择,因此我选择了所有行,但如果一行有父行,它将显示在父行之后。所以在这种情况下,行将如下所示

id  parent_id   name    address     email   telephone
2 NULL name address email phone
3 NULL name2 address2 email2 phone2
4 NULL name3 address3 email3 phone3
5 NULL name4 address4 email4 phone4
7 5 name7 email7 phone7
6 NULL name6 email6 phone6
8 NULL name8 email8 phone8

id=7 的行位于 id=6 的行之前,因为 id=7 的行的parent_id 是 5,因此它直接放置在该行之后。

最佳答案

您可以通过在 order by 子句中使用 case 语句来完成此操作:

select * 
from yourtable
order by case when parentid is null then id else parentid end, parentid

关于mysql - 如何在 MySQL 中按父子进行 SELECT 和排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35228811/

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