mysql如何递归汇总?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql如何递归汇总?相关的知识,希望对你有一定的参考价值。
在mysql,怎样递归算出没一个节点的值?如图,知道所有叶子结点的值,递归计算出其它节点的值。
参考技术A 单表自身关联查询,关联条件就是父节点pcode和code相等,查询字段包含pcode和sorce,将查询结果作为新表按pcode分组,用group by,查询字段是count记录数,这样就获取pcode的节点值,这是整体思路 参考技术B 需要用存储过程才能实现 参考技术C with a as(select * from table1 where parentid=0
union all
select b.* from a,table1 b where a.id=b.parentid)
select * from a
用with as 来实现递归 参考技术D 表结构,表数据发出来看看
如何在 mySQL 中建模递归可选依赖项?
【中文标题】如何在 mySQL 中建模递归可选依赖项?【英文标题】:How to model a recursive optional Dependency in mySQL? 【发布时间】:2011-11-30 10:39:52 【问题描述】:如何对递归可选依赖项进行建模?就像一个产品可能由其他产品组成?但也可以单独出售。我希望能够自上而下查询嵌合产品,即从父母到孩子,而不是查询具有相同父母的孩子,这是我目前的设计解决方案所做的。
【问题讨论】:
sqlblog.com/blogs/john_paul_cook/archive/2009/11/06/… 对此进行了很好的讨论。 【参考方案1】:您需要 物料清单 模式来满足此类要求。 Neville K 的评论指向一个关于物料清单的好博客。
为了更轻松地处理此类设计所涉及的非层次树结构,您可以使用一种称为访问次数的物理实现技术,我在回答this question.
【讨论】:
以上是关于mysql如何递归汇总?的主要内容,如果未能解决你的问题,请参考以下文章