SOS!!复杂的sql语句、诡异的需求
如下图:
表一:是一个统计表,ORGANIZATION_ID是单位的ID,COUNT是统计到的该单位的数据
表二:是单位表,ID是单位的ID,NAME是单位名称,parent是该单位的上级单位ID,ancestor是按该单位的父级的ID按顺序排列的
表三:是我希望得到的表。我希望用一句sql语句查询得到表三的结构的表,而且COUNT列的数据是该单位的COUNT加上它的下级单位的COUNT,也就是一个汇总的数据
获取某个单位及该单位的下级单位的sql语句:
比如获取ID为200020的:select * from t_organization where id=200020 or ancestor like '%200020%'
补充:
图片中我用红线表示的意思是:
比如表一中第二行的ORGANIZATION_ID是第一行的ORGANIZATION_ID的下级,所以表二中的第一行的COUNT就是表一中的那2行相加,也就是72+5=77
比如表一中第4、5行是第3行的下级,所以表二中的第3行就是表一中的第3、4、5行相加的,也就是9+3+2=14
图片:
------解决方案--------------------