CN111522819A - 一种树型结构数据汇总的方法及系统 - Google Patents

一种树型结构数据汇总的方法及系统 Download PDF

Info

Publication number
CN111522819A
CN111522819A CN202010332423.9A CN202010332423A CN111522819A CN 111522819 A CN111522819 A CN 111522819A CN 202010332423 A CN202010332423 A CN 202010332423A CN 111522819 A CN111522819 A CN 111522819A
Authority
CN
China
Prior art keywords
parent
point
tree
elements
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010332423.9A
Other languages
English (en)
Inventor
王志兴
汤国富
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Udsoft Technology Co ltd
Original Assignee
Shanghai Udsoft Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Udsoft Technology Co ltd filed Critical Shanghai Udsoft Technology Co ltd
Priority to CN202010332423.9A priority Critical patent/CN111522819A/zh
Publication of CN111522819A publication Critical patent/CN111522819A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种树型结构数据汇总的方法及系统,该方法为首先对针对树型结构数据元素进行分组,一组为父级点元素,另一组为子级点元素,树型结构父级点元素数据均为子级点元素的集合之和;然后针对树型结构数据的父级点元素,提取每一个构造父级点元素关联子级点元素的集合;最后利用所得的构造用于父级点与子级点的集合,通过数据库中的聚合函数汇总父级点元素的数据。本发明还提供了通过该方法建立的树型结构数据汇总系统。本发明提供的树型结构数据汇总的方法及系统,该树型结构层级越多汇总速度比传统递归计算方法提高的倍数越多,从而能够在不使用递归计算方法的情况下解决树型结构数据层级汇总速度较慢的问题。

Description

一种树型结构数据汇总的方法及系统
技术领域
本发明涉及一种计算机技术和统计领域中用于数据汇总的方法及系统,具体地,涉及一种树型结构数据汇总的方法及系统。
背景技术
在计算机应用及统计报表中,经常需要利用树型结构数据实现汇总分析。树是一种重要的非线性数据结构,直观地看,它是数据元素(在树中称为级点元素)按分支关系组织起来的结构。树型结构在计算机数据表中广泛应用,如在大量统计学中数据的汇总分析都是用树型结构来表示。树型结构表示数据的层级关系,对数据层级(级点元素)汇总一般都使用递归算法来实现的。由于递归算法存在占用计算机资源会很多,而且当树型结构层级越多时计算效率会越低、速度会较慢,造成用户需要花费大量时间等待数据汇总加载,严重降低了用户体验感。
发明内容
本发明的目的是提供一种处理树型结构数据汇总的方法及系统,从而能够在不使用递归计算方法的情况下解决树型结构数据层级汇总速度较慢的问题。
为了达到上述目的,本发明提供了一种树型结构数据汇总的方法,其中,所述的方法为:首先对针对树型结构数据元素进行分组,一组为父级点元素,另一组为子级点元素,树型结构父级点元素数据均为子级点元素的集合之和;然后针对树型结构数据的父级点元素,提取每一个构造父级点元素关联子级点元素的集合;最后利用所得的构造用于父级点与子级点的集合,通过数据库中的聚合函数汇总父级点元素的数据。
上述的树型结构数据汇总的方法,其中,所述的方法中,通过树型结构数据表样判析所有树型结构的元素构成,分为二组类别元素,一组是父级点元素,另一组是子级点元素;父级点元素是汇总元素,每一个汇总元素都来自子级点元素的集合。
上述的树型结构数据汇总的方法,其中,所述的方法包含:步骤1、构建树型结构数据元素表;步骤2、创建存放父级点元素表,判断元素标识字段提取所有树型结构数据中的父级点元素;步骤3、创建存放子级点元素表;步骤4、调用数据库中的聚合函数,对子级点元素表的子级点元素集合进行分类汇总。
上述的树型结构数据汇总的方法,其中,所述的步骤1中构建树型结构数据元素表,包含在建立树型级点元素的同时创建元素关键属性字段,作为元素标识。
上述的树型结构数据汇总的方法,其中,所述的步骤1中,树型结构数据中的级点元素有2个关键的属性字段,一个是存放父级点的主键字段,用pk_parent表示,另一个字段用于标识该元素父级点还是子级点。
上述的树型结构数据汇总的方法,其中,所述的步骤2中,包含从树型结构数据元素表提取父级点元素。
上述的树型结构数据汇总的方法,其中,所述的步骤3中,包含从树型结构数据元素表提取子级点元素的集合。
上述的树型结构数据汇总的方法,其中,所述的步骤3中,通过对树型结构数据元素的pk_parent字段关联,并判断元素标识字段提取父级点元素表中每一个元素的子级点元素的集合。
上述的树型结构数据汇总的方法,其中,所述的步骤4中,将步骤3中子级点元素集合按父级点主键ID进行聚合汇总。
本发明还提供了通过上述的方法建立的树型结构数据汇总系统。
本发明提供的树型结构数据汇总的方法及系统具有以下优点:
本发明通过树型结构数据表样判析所有树型结构的元素构成,可分为二组类别元素,一组是父级点(非未级)元素,另一组是子级点(未级)元素;父级点(非未级)元素是汇总元素,每一个汇总元素都来自子级点(未级)元素的集合。通过使用该技术方案,能够对树型结构数据三层级点以上,实现的数据汇总比原来递归计算的方法速度快3-5倍以上,并且占用计算机的资源较少;针对树型结构数据层级越多会比原来递归计算的方法速度更快,更能体现效果。
附图说明
图1为本发明的树型结构数据汇总的方法的流程示意图。
图2为本发明的树型结构数据汇总的方法的创建树型结构数据表的示意图。
图3为本发明的树型结构数据汇总的方法的创建存放父级点元素表和创建存放子级点元素集合表的示意图。
具体实施方式
以下结合附图对本发明的具体实施方式作进一步地说明。
本发明提供了一种树型结构数据汇总的方法,该方法为:首先对针对树型结构数据元素进行分组,一组为父级点元素,另一组为子级点元素,树型结构父级点元素数据均为子级点元素的集合之和;然后针对树型结构数据的父级点元素,提取每一个构造父级点元素关联子级点元素的集合;最后利用所得的构造用于父级点与子级点的集合,通过数据库中的聚合函数汇总父级点元素的数据。
该方法中通过树型结构数据表样判析所有树型结构的元素构成,分为二组类别元素,一组是父级点元素,另一组是子级点元素;父级点元素是汇总元素,每一个汇总元素都来自子级点元素的集合。
该方法包含:步骤1、构建树型结构数据元素表;步骤2、创建存放父级点元素表,判断元素标识字段提取所有树型结构数据中的父级点元素;步骤3、创建存放子级点元素表;步骤4、调用数据库中的聚合函数,对子级点元素表的子级点元素集合进行分类汇总。
步骤1中构建树型结构数据元素表,包含在建立树型级点元素的同时创建元素关键属性字段,作为元素标识。
步骤1中树型结构数据中的级点元素有2个关键的属性字段,一个是存放父级点的主键字段,用pk_parent表示,另一个字段用于标识该元素父级点还是子级点。
步骤2中包含从树型结构数据元素表提取父级点元素。
步骤3中包含从树型结构数据元素表提取子级点元素的集合。
步骤3中通过对树型结构数据元素的pk_parent字段关联,并判断元素标识字段提取父级点元素表中每一个元素的子级点元素的集合。
步骤4中将步骤3中子级点元素集合按父级点主键ID进行聚合汇总。
本发明还提供了通过该方法建立的树型结构数据汇总系统。
下面结合实施例对本发明提供的树型结构数据汇总的方法及系统做更进一步描述。
实施例1
一种树型结构数据汇总的方法,该方法为:首先对针对树型结构数据元素进行分组,一组为父级点元素(即非未级元素),另一组为子级点元素(即未级元素),树型结构父级点元素数据均为子级点元素的集合之和;然后针对树型结构数据的父级点元素(即非未级元素),提取每一个构造父级点元素关联子级点元素(即未级元素)的集合;最后利用所得的构造用于父级点与子级点的集合,通过数据库中的聚合函数汇总父级点元素的数据。
该方法中通过树型结构数据表样判析所有树型结构的元素构成,分为二组类别元素,一组是父级点元素,另一组是子级点元素;父级点元素是汇总元素,每一个汇总元素都来自子级点元素的集合。
如图1所示,该方法包含:
步骤1(S101)、构建树型结构数据表,存放树形结构元素及数据。其中包含在建立树型级点元素的同时创建元素关键属性字段(即元素标识字段),作为元素标识。
树型结构数据中的级点元素有2个关键的属性字段,一个是存放父级点的主键字段,用pk_parent表示,另一个字段用于标识该元素父级点还是子级点,用Node_mark表示。即pk_parent存放父级点主键,Node_mark存放级点标识。参见图2所示。
步骤2(S102)、创建存放父级点(父节点)元素表,判断元素标识字段提取所有树型结构数据中的父级点元素(非未级元素),并从树型结构数据元素表提取父级点元素(非未级元素)。
步骤3(S103)、创建存放子级点(子节点)元素表。其中包含从树型结构数据元素表提取子级点元素(未级元素)的集合。参见图3所示。
通过对树型结构数据元素的pk_parent字段关联,并判断元素标识字段提取父级点元素表中每一个元素的子级点元素(未级元素)的集合。
步骤4(S104)、调用数据库中的聚合函数,对子级点元素表的子级点元素集合进行分类汇总,即调用数据库聚合函数对父级点元素进行汇总。其中包含将步骤3中子级点元素集合按父级点主键ID进行聚合汇总。
聚合函数是SQL基本函数,聚合函数对一组值执行计算,并返回单个值,也被称为组函数。
本实施例还提供了通过该方法建立的树型结构数据汇总系统。
本发明提供的树型结构数据汇总的方法及系统,是将一种基于树型结构级点数据汇总方法,应用于树型结构数据汇总系统中,该树型结构层级越多汇总速度比传统递归计算方法提高的倍数越多,从而能够在不使用递归计算方法的情况下解决树型结构数据层级汇总速度较慢的问题。
尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。

Claims (10)

1.一种树型结构数据汇总的方法,其特征在于,所述的方法为:首先对针对树型结构数据元素进行分组,一组为父级点元素,另一组为子级点元素,树型结构父级点元素数据均为子级点元素的集合之和;然后针对树型结构数据的父级点元素,提取每一个构造父级点元素关联子级点元素的集合;最后利用所得的构造用于父级点与子级点的集合,通过数据库中的聚合函数汇总父级点元素的数据。
2.如权利要求1所述的树型结构数据汇总的方法,其特征在于,所述的方法中,通过树型结构数据表样判析所有树型结构的元素构成,分为二组类别元素,一组是父级点元素,另一组是子级点元素;父级点元素是汇总元素,每一个汇总元素都来自子级点元素的集合。
3.如权利要求2所述的树型结构数据汇总的方法,其特征在于,所述的方法包含:
步骤1、构建树型结构数据元素表;
步骤2、创建存放父级点元素表,判断元素标识字段提取所有树型结构数据中的父级点元素;
步骤3、创建存放子级点元素表;
步骤4、调用数据库中的聚合函数,对子级点元素表的子级点元素集合进行分类汇总。
4.如权利要求3所述的树型结构数据汇总的方法,其特征在于,所述的步骤1中构建树型结构数据元素表,包含在建立树型级点元素的同时创建元素关键属性字段,作为元素标识。
5.如权利要求4所述的树型结构数据汇总的方法,其特征在于,所述的步骤1中,树型结构数据中的级点元素有2个关键的属性字段,一个是存放父级点的主键字段,用pk_parent表示,另一个字段用于标识该元素父级点还是子级点。
6.如权利要求3所述的树型结构数据汇总的方法,其特征在于,所述的步骤2中,包含从树型结构数据元素表提取父级点元素。
7.如权利要求3所述的树型结构数据汇总的方法,其特征在于,所述的步骤3中,包含从树型结构数据元素表提取子级点元素的集合。
8.如权利要求7所述的树型结构数据汇总的方法,其特征在于,所述的步骤3中,通过对树型结构数据元素的pk_parent字段关联,并判断元素标识字段提取父级点元素表中每一个元素的子级点元素的集合。
9.如权利要求3所述的树型结构数据汇总的方法,其特征在于,所述的步骤4中,将步骤3中子级点元素集合按父级点主键ID进行聚合汇总。
10.一种通过如权利要求1~9中任意一项所述的方法建立的树型结构数据汇总系统。
CN202010332423.9A 2020-04-24 2020-04-24 一种树型结构数据汇总的方法及系统 Pending CN111522819A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010332423.9A CN111522819A (zh) 2020-04-24 2020-04-24 一种树型结构数据汇总的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010332423.9A CN111522819A (zh) 2020-04-24 2020-04-24 一种树型结构数据汇总的方法及系统

Publications (1)

Publication Number Publication Date
CN111522819A true CN111522819A (zh) 2020-08-11

Family

ID=71910898

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010332423.9A Pending CN111522819A (zh) 2020-04-24 2020-04-24 一种树型结构数据汇总的方法及系统

Country Status (1)

Country Link
CN (1) CN111522819A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111737539A (zh) * 2020-08-24 2020-10-02 成都四方伟业软件股份有限公司 一种复杂报表引擎方法及装置
CN112580317A (zh) * 2020-12-29 2021-03-30 江苏金财信息技术有限公司 一种快速生成带层级汇总的动态交叉二维表的方法

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101031892A (zh) * 2004-10-01 2007-09-05 特博数据实验室公司 排列的生成方法以及排列生成程序
CN101216824A (zh) * 2007-01-05 2008-07-09 冯卫国 一种将树型结构数据库发布为分布式xml数据库的方法
CN102867065A (zh) * 2012-09-28 2013-01-09 用友软件股份有限公司 基于关系型数据库的数据汇总装置和方法
CN103186568A (zh) * 2011-12-28 2013-07-03 金蝶软件(中国)有限公司 树型结构数据的访问方法及系统
CN103793469A (zh) * 2013-12-30 2014-05-14 远光软件股份有限公司 一种数据查询统计方法及系统
CN103838738A (zh) * 2012-11-21 2014-06-04 大连灵动科技发展有限公司 一种决策支持系统中数据完整性的解决方法
CN104750849A (zh) * 2015-04-13 2015-07-01 北京京东尚科信息技术有限公司 用于维护基于树形结构的目录关系的方法和系统
CN105956054A (zh) * 2016-04-27 2016-09-21 国家电网公司 基于关系型数据库的电网cim模型数据实现存储的方法
CN106126720A (zh) * 2016-06-30 2016-11-16 北京奇虎科技有限公司 对移动终端浏览器的收藏夹进行管理的方法及装置
CN106326427A (zh) * 2016-08-24 2017-01-11 明算科技(北京)股份有限公司 线性结构到树形结构的数据结构转换方法
US20170139966A1 (en) * 2015-11-18 2017-05-18 Sap Se Automated analysis of data reports to determine data structure and to perform automated data processing
US20180018383A1 (en) * 2016-07-18 2018-01-18 Sap Se Hierarchical Data Grouping in Main-Memory Relational Databases
CN108090134A (zh) * 2017-11-24 2018-05-29 重庆英卡电子有限公司 基于虚实poi树的管理地图表达方法
CN109033438A (zh) * 2018-08-15 2018-12-18 邢鲁华 一种记录用户学习内容的方法及装置
CN109933589A (zh) * 2019-03-15 2019-06-25 北京计算机技术及应用研究所 用于数据汇总的基于ElasticSearch聚合运算结果的数据结构转换方法
CN111046630A (zh) * 2019-12-06 2020-04-21 中国科学院计算技术研究所 一种json数据的语法树提取方法

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101031892A (zh) * 2004-10-01 2007-09-05 特博数据实验室公司 排列的生成方法以及排列生成程序
CN101216824A (zh) * 2007-01-05 2008-07-09 冯卫国 一种将树型结构数据库发布为分布式xml数据库的方法
CN103186568A (zh) * 2011-12-28 2013-07-03 金蝶软件(中国)有限公司 树型结构数据的访问方法及系统
CN102867065A (zh) * 2012-09-28 2013-01-09 用友软件股份有限公司 基于关系型数据库的数据汇总装置和方法
CN103838738A (zh) * 2012-11-21 2014-06-04 大连灵动科技发展有限公司 一种决策支持系统中数据完整性的解决方法
CN103793469A (zh) * 2013-12-30 2014-05-14 远光软件股份有限公司 一种数据查询统计方法及系统
CN104750849A (zh) * 2015-04-13 2015-07-01 北京京东尚科信息技术有限公司 用于维护基于树形结构的目录关系的方法和系统
US20170139966A1 (en) * 2015-11-18 2017-05-18 Sap Se Automated analysis of data reports to determine data structure and to perform automated data processing
CN105956054A (zh) * 2016-04-27 2016-09-21 国家电网公司 基于关系型数据库的电网cim模型数据实现存储的方法
CN106126720A (zh) * 2016-06-30 2016-11-16 北京奇虎科技有限公司 对移动终端浏览器的收藏夹进行管理的方法及装置
US20180018383A1 (en) * 2016-07-18 2018-01-18 Sap Se Hierarchical Data Grouping in Main-Memory Relational Databases
CN106326427A (zh) * 2016-08-24 2017-01-11 明算科技(北京)股份有限公司 线性结构到树形结构的数据结构转换方法
CN108090134A (zh) * 2017-11-24 2018-05-29 重庆英卡电子有限公司 基于虚实poi树的管理地图表达方法
CN109033438A (zh) * 2018-08-15 2018-12-18 邢鲁华 一种记录用户学习内容的方法及装置
CN109933589A (zh) * 2019-03-15 2019-06-25 北京计算机技术及应用研究所 用于数据汇总的基于ElasticSearch聚合运算结果的数据结构转换方法
CN111046630A (zh) * 2019-12-06 2020-04-21 中国科学院计算技术研究所 一种json数据的语法树提取方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
王艳平;: "树型结构生成及逐级汇总的设计与实现", no. 08 *
魏斌;马继辉;牛虎;: "基于递归算法的树型结构图的设计与实现", no. 01 *
黄正瑞: "会计科目信息的树型组织及其快速汇总", no. 02 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111737539A (zh) * 2020-08-24 2020-10-02 成都四方伟业软件股份有限公司 一种复杂报表引擎方法及装置
CN112580317A (zh) * 2020-12-29 2021-03-30 江苏金财信息技术有限公司 一种快速生成带层级汇总的动态交叉二维表的方法

Similar Documents

Publication Publication Date Title
EP3117347B1 (en) Systems and methods for rapid data analysis
US7962524B2 (en) Computer program, device, and method for sorting dataset records into groups according to frequent tree
WO2015184762A1 (zh) 数据库查询方法及装置
US20150066987A1 (en) Method and system for accessing a set of data tables in a source database
CN105631003A (zh) 支持海量数据分组统计的智能索引构建、查询及维护方法
CN109947804B (zh) 数据集合查询的优化方法、装置、服务器和存储介质
CN111506621A (zh) 一种数据统计方法及装置
US20150039623A1 (en) System and method for integrating data
CN112015741A (zh) 一种海量数据的分库分表存储方法与装置
CN111522819A (zh) 一种树型结构数据汇总的方法及系统
CN114461644A (zh) 一种数据采集方法、装置、电子设备及存储介质
US20190340272A1 (en) Systems and related methods for updating attributes of nodes and links in a hierarchical data structure
CN110704472A (zh) 数据查询统计方法及装置
CN110874366A (zh) 数据处理、查询方法和装置
US7962526B2 (en) Frequent itemset counting using clustered prefixes and index support
CN110765100B (zh) 标签的生成方法、装置、计算机可读存储介质及服务器
CN110321388B (zh) 一种基于Greenplum的快速排序查询方法及系统
CN114490724B (zh) 处理数据库查询语句的方法和装置
US12026162B2 (en) Data query method and apparatus, computing device, and storage medium
CN115794788A (zh) 数据去重方法、装置、设备及存储介质
CN107730021B (zh) 一种业务指标优化方法和装置
Rao et al. Efficient Iceberg query evaluation using compressed bitmap index by deferring bitwise-XOR operations
CN114969189A (zh) 一种数据库连接池中连接确定方法及装置
CN109885953B (zh) 一种模型构件的映射方法和装置
CN114943004B (zh) 属性图查询方法、属性图查询装置以及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination