1、教学:

where id=19是终止条件(过滤条件),即只保留id=19的末级记录。
也可以没有终止条件,全部递归结果都查询出来。
2、实战:
2.1、查询全部子节点:
WITH RECURSIVE r AS (
#起始部分
SELECT id,name,concat(id,'') as fullid FROM reqsource t where id=253
#递归部分
UNION ALL
SELECT t.id,t.name,concat(r.fullid,'\\',t.id) as fullid FROM reqsource t,r WHERE r.id = t.parentid
)
select id,name,fullid from r
2.2、删除全部子节点:
delete from reqsource where id in (
WITH RECURSIVE r AS (
#起始部分
SELECT id FROM reqsource t where id=253
#递归部分
UNION ALL
SELECT t.id FROM reqsource t,r WHERE r.id = t.parentid
)
select id from r)