本文主要是介绍数据库查询如何查询父级id下无限子级的元素列表,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、pgsql
WITH RECURSIVE sub_categories AS (SELECT id, parent_id, nameFROM categoriesWHERE parent_id = '父级ID' -- 替换为你要查询的父级IDUNION ALLSELECT c.id, c.parent_id, c.nameFROM categories cINNER JOIN sub_categories sc ON sc.id = c.parent_id
)
SELECT * FROM sub_categories;
二、mysql
SELECT*
FROM(SELECTt1.*,IF( FIND_IN_SET( parent_id, @parent_ids ) > 0, @parent_ids := CONCAT( @parent_ids, ',', id ), '0' ) AS ischild FROM( SELECT * FROM blade_menu AS t WHERE t.is_deleted = 0 AND client_type = 'dianduyun_app' ORDER BY t.id ASC ) t1,( SELECT @parent_ids := '1508255373140103170' ) t2 ) t3
WHEREischild != '0'
需要修改的地方
- parent_id,改为你的父级id字段
- blade_menu ,改为你的表名称
- WHERE t.is_deleted = 0 ,改为你的查询条件
- @parent_ids := ‘1508255373140103170’,值改为你要传入的父级id
这篇关于数据库查询如何查询父级id下无限子级的元素列表的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!