gpt4 book ai didi

php - 我想运行查询来获取 catagory_name 的层次结构

转载 作者:行者123 更新时间:2023-11-29 13:50:38 25 4
gpt4 key购买 nike

如果我的数据库如下所示:-

| CATAGORY_ID | CATAGORY_NAME | PARENT_ID |
-------------------------------------------
| 1 | x | 0 |
| 2 | y | 1 |
| 3 | z | 2 |

我用它来获得一个层次结构,但我希望 ds 运行直到它获得parent_id =0

SELECT catagory_name
FROM catagory_master
WHERE catagory_id = (
SELECT parent_id
FROM catagory_master
WHERE catagory_id =4 )

如果我想要 x-y-z for catagory_id=3 和 x-y for catagory_id=2 以及 x for catagory_id=1请帮助我必须在 php 脚本中运行它

最佳答案

尝试这个查询

select 
catagory_id,
catagory_name,
@pv:=parent_id as 'parent_id'
from (select * from table1 order by catagory_id desc)a
join
(select @pv:=3)tmp
where catagory_id=@pv

<强> SQL FIDDLE :

| CATAGORY_ID | CATAGORY_NAME | PARENT_ID |
-------------------------------------------
| 3 | z | 2 |
| 2 | y | 1 |
| 1 | x | 0 |

注意:如果 parent_id 始终小于该记录的 category_id,则此查询将起作用。如果您按 desc 字段删除订单,您将仅获得 1 条记录。如果您想要一个合适的具体解决方案,那么您需要一个存储过程..

关于php - 我想运行查询来获取 catagory_name 的层次结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16729010/

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