gpt4 book ai didi

mysql - SQL(?)如何从面包屑中解析父类别以使用parentID更新字段?

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

我遇到了一个棘手的问题,希望有人能帮助我。

我有一个类别结构,其中包括:

  • ID
  • 类别路径
  • 类别名称

示例:

1   Root/Arts   Arts
2 Root/Arts/Animation Animation
3 Root/Arts/Animation/Anime Anime
4 Root/Arts/Animation/Anime/Characters Characters
5 Root/Arts/Animation/Anime/Clubs_and_Organizations Clubs_and_Organizations
6 Root/Arts/Animation/Anime/Collectibles Collectibles
7 Root/Arts/Animation/Anime/Collectibles/Cels Cels
8 Root/Arts/Animation/Anime/Collectibles/Models_and_Figures Models_and_Figures
9 Root/Arts/Animation/Anime/Collectibles/Models_and_Figures/Action_Figures Action_Figures
10 Root/Arts/Animation/Anime/Collectibles/Models_and_Figures/Action_Figures/Gundam Gundam
11 Root/Arts/Animation/Anime/Collectibles/Models_and_Figures/Action_Figures/Zoids Zoids
12 Root/Arts/Animation/Anime/Collectibles/Models_and_Figures/Models Models
13 Root/Arts/Animation/Anime/Collectibles/Models_and_Figures/Models/Gundam Gundam
14 Root/Arts/Animation/Anime/Collectibles/Shitajiki Shitajiki

我需要的是确定每一行的父类别,以便表格看起来像这样:

  • ID
  • 姓名
  • 路径
  • parent_id

数据采用 SQL 格式,但我也有文本文件,并且可以通过命令行来完成此操作。也许它是完成这项工作的更好工具?

这是一个使用下面提供的查询和上面示例数据的 SQL fiddle :

http://sqlfiddle.com/#!9/e060ec/1

预先感谢您的任何指导。

最佳答案

我已经更正了sql。

SELECT c.id, c.name, c.path, p.id AS parent_id
FROM cat_test p
RIGHT JOIN (
SELECT id, name,path, LEFT(path,LENGTH(path) - LENGTH(name)-1) AS parent
FROM cat_test) c
ON c.parent=p.path

SQL Fiddle

我没有足够的声誉来添加评论,因此我推送了一个新答案。对此深表歉意。

关于mysql - SQL(?)如何从面包屑中解析父类别以使用parentID更新字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56893356/

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