# 前言 提示:本人PostgreSql使用过程中总结的经验,如有不对欢迎指正。
一、WITH查询的RECURSIVE属性
提示:WITH查询的一个重要属性是RECURSIVE,使用RECURSIVE属性可以引用自己的输出,从而实现递归,一般用于层次结构或树状结构的应用场景。
例如,存在一张包含如下数据的表。table=test_area
使用PostgreSQL的WITH查询检索ID为7以及以上的所有父节点,如下:
WITH RECURSIVE r AS ( SELECT * FROM test_area WHERE id = 7 UNION ALL SELECT test_area.* FROM test_area, r WHERE test_area.id = r.fatherid ) SELECT * FROM r ORDER BY id;
查询结果如下:
总结
提示:这里对文章进行总结:
本人PostgreSql使用过程中总结的经验,如有不对欢迎指正。图文来源于网络,如有侵权,请联系删除。