postgres 层次查询

postgres 有递归查询,说白了就是广度遍历,但是没有层次查询,postgres plus 可以模拟 oracle——包括plsql存储过程等等语言特性,但是要钱。

怎么搞出层次查询呢?这里有个方法:

http://explainextended.com/2009/07/17/postgresql-8-4-preserving-order-for-hierarchical-query/


关键点:


with recursive t as  (
	select n.*, ARRAY[n.id] AS breadcrumb from test_node n where id=1
	union all 
	select n.*, t.breadcrumb || n.id from test_node n, t where n.parent_id = t.id)
select * from t order by breadcrumb

埋一个 breadcrumb (面包屑)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值