如何处理postgresql中的递归聚合

如何处理postgresql中的递归聚合,postgresql,view,aggregate-functions,common-table-expression,recursive-query,Postgresql,View,Aggregate Functions,Common Table Expression,Recursive Query,我试图表示一个值和权重的层次结构,这样每个节点都可以根据其子节点的值根据其权重进行计算。每个节点都有权重,但只有叶子有存储在另一个表中的值,每个父节点的值是其子节点的加权平均值。我想写一个视图,递归地计算层次结构中所有节点的值 表: 节点-id,父节点\u id 值-id、值、节点\u id 权重-id、权重、节点\u id

我试图表示一个值和权重的层次结构,这样每个节点都可以根据其子节点的值根据其权重进行计算。每个节点都有权重,但只有叶子有存储在另一个表中的值,每个父节点的值是其子节点的加权平均值。我想写一个视图,递归地计算层次结构中所有节点的值

表:

节点-id,父节点\u id

值-id、值、节点\u id

权重-id、权重、节点\u id