如何解决MariaDB 查询父子类别
我有这个 MariaDB 表“类别”:
id category parent_id
1 electronics 0
2 fashion 0
3 TV 1
4 mobile 1
5 Sony 3
6 power bank 1
7 iphone 4
1 electronics
3 electronics >> TV
5 electronics >> TV >> Sony
4 electronics >> Mobile
7 electronics >> Mobile >> iphone
6 electronics >> Power bank
2 fashion
解决方法
WITH RECURSIVE
cte AS ( SELECT id,category,parent_id,category path
FROM categories
WHERE parent_id = 0
UNION ALL
SELECT c.id,c.category,c.parent_id,CONCAT(cte.path,' > ',c.category)
FROM categories c
JOIN cte ON cte.id = c.parent_id )
SELECT * FROM cte;
https://dbfiddle.uk/?rdbms=mariadb_10.4&fiddle=d9d59ace66a91b6b95c14e31cd1f6d1b
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。