日期:2014-05-16  浏览次数:20629 次

如何统计栏目下的文档数量
栏目和文章时从其他系统导入过来的,栏目可以无限多级。

我现在先导入了栏目信息,然后导入了文章信息,接下来想要更新各个栏目的文档数量

栏目的每一级都要统计到

例如
栏目表中数据为:
channelid parentid name doccount
1 一级栏目1  
2 1 二级栏目1  
3 1 二级栏目2  
4 2 三级栏目1  
样式为:
一级栏目1
  二级栏目1
  二级栏目2
  三级栏目1

文章表中数据为:
artiid channeid
1 1
2 1
3 2
4 3
5 3
6 4 
一篇直接属于三级栏目1,两篇直接属于二级栏目2,一篇直接属于二级栏目1,一篇直接属于一级栏目1 


所以统计后,更新栏目表,期望得到的结果为:
channelid parentid name doccount
1 一级栏目1 6
2 1 二级栏目1 1
3 1 二级栏目2 3 
4 2 三级栏目1 1

请问这样的sql应该怎么写?(mysql)



------解决方案--------------------
没有办法直接仅通过SQL语句来实现,需要用到存储过程。或者在你的程序中实现。

可以参考一下这个贴子的函数。
http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/02/4142971.aspx