CN102236659A - 使用复杂条件从数据源进行数据过滤的方法和系统 - Google Patents
使用复杂条件从数据源进行数据过滤的方法和系统 Download PDFInfo
- Publication number
- CN102236659A CN102236659A CN2010101577906A CN201010157790A CN102236659A CN 102236659 A CN102236659 A CN 102236659A CN 2010101577906 A CN2010101577906 A CN 2010101577906A CN 201010157790 A CN201010157790 A CN 201010157790A CN 102236659 A CN102236659 A CN 102236659A
- Authority
- CN
- China
- Prior art keywords
- filtercondition
- data
- filtration group
- filter
- filtration
- 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.)
- Granted
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了使用复杂条件从数据源进行数据过滤的方法,包括:将每种类型数据过滤所用筛选条件转换成由若干个过滤组相互间以相同逻辑关系组合的形式,过滤组包括若干个彼此间以同一逻辑关系组合且均为单一过滤要素的过滤条件,并将所得的过滤组及其过滤条件之间组合关系记载于数据库表中;将当前数据过滤所用筛选条件的取值写入数据库表中;查询数据库表获得当前数据过滤中各过滤条件要求,并依次从数据源中筛选出符合各过滤组要求的初选数据;根据过滤组之间的逻辑关系和初选数据,从数据源中获得符合当前数据过滤要求的数据。还相应公开了包括转换处理单元,赋值单元、第一过滤单元和第二过滤单元的系统。它能有效提高扩展性、维护性和复用性。
Description
【技术领域】
本发明涉及数据过滤方法和系统,尤其涉及使用复杂条件从数据源进行数据过滤的方法和系统,属于数据处理技术领域。
【背景技术】
随着社会发展和时代进步,人们在现代生活中的各种交易活动也日益地增多,例如,金融业务交易、水电气等公共事业交易和网络支付交易等等。然而,与此同时,交易行为的类型及其业务逻辑规则也更为复杂。目前,当需要使用复杂条件(是指由多个条件进行多层次、高耦合性的逻辑关系组合)从数据源进行数据过滤的处理时,现有技术一般是通过直接在业务系统处理程序中修改过滤条件和过滤逻辑来实现的。例如,如果需要将数据过滤中的原条件1改为新条件2时,就直接在该业务系统处理程序中完成相应的修改。
尽管采用上述处理方法,有时确实是非常方便和快捷,然而不容忽视的是,这种处理方法实际上是将整个系统的数据过滤条件完全混杂在一起,根本没有对数据过滤的处理逻辑进行严格的限定,从而使得业务处理之间存在着非常强的耦合性,甚至不确定性。具体而言,上述处理方法以及采用该方法的系统存在着以下这些缺点:
1、抗变更能力弱。如果存在针对过滤条件取值的变动,则需要更改相当复杂困难,有时甚至根本无法进行修改;
2、扩展性非常差。如果存在针对过滤条件的增加、删除,则对原有系统的影响相当大,因此不容易被融合在原有系统中;
3、维护性非常差。由于复杂条件完全混杂在一起,所以致使其非常不容易被理解,而且维护起来相当麻烦,需要投入大量的人力和物力;
4、复用性非常差。由于过滤条件与过滤处理逻辑被糅合在一起,因此几乎不能被复用,从而造成对现有资源的严重浪费。
【发明内容】
有鉴于此,本发明的目的在于提供使用复杂条件从数据源进行数据过滤的方法和系统,以有效地解决现有的处理方法及系统中存在的扩展性、维护性和复用性都非常差以及抗变更能力弱等诸多问题。
为实现上述发明目的,本发明采用的技术方案如下:
一种使用复杂条件从数据源进行数据过滤的方法,其包括如下步骤:
A、将每种类型数据过滤所用的筛选条件转换成由若干个过滤组相互之间以相同逻辑关系进行组合的形式,所述过滤组包括若干个彼此之间以同一逻辑关系进行组合且均为单一过滤要素的过滤条件,并将所得到的过滤组及其过滤条件之间的组合关系记载于数据库表中;
B、将当前数据过滤所用筛选条件的取值写入所述数据库表中;
C、查询所述数据库表获得当前数据过滤中的各过滤条件要求,并依次从数据源中筛选出符合当前数据过滤中的各过滤组要求的初选数据;以及
D、根据所述过滤组之间的逻辑关系以及所述初选数据,从数据源中获得符合当前数据过滤要求的数据。
优选地,在上述的技术方案中,所述过滤组相互之间的逻辑关系是“或”,所述过滤条件彼此之间的逻辑关系是“与”。
优选地,在上述的技术方案中,所述数据库表包括:
过滤组组合定义表,其用于记载每种类型数据过滤所包括的过滤组的信息,所述过滤组的信息至少包括过滤组的编号、过滤组内各过滤条件的分类号,并且每一个过滤组的编号是唯一的;
过滤组算法定义表,其用于记载所述过滤组的具体信息,所述具体信息至少包括过滤组内各过滤条件的分类号及其过滤方式;以及
过滤组取值表,其用于记载所述过滤组内各过滤条件的分类号、各过滤条件的具体取值。
优选地,在上述的技术方案中,所述具体信息还包括对所述过滤组内各过滤条件的描述。
优选地,在上述的技术方案中,所述过滤方式包括过滤条件类型和黑白名单标识,所述过滤条件类型是指过滤出唯一数值或者一个数值范围,所述黑白名单标识是指使用黑名单或者白名单的选定方式来选中符合要求的数据。
优选地,在上述的技术方案中,所述具体取值包括过滤条件最小值和过滤条件最大值,并且当所述过滤组算法定义表中的所述过滤条件类型为过滤出唯一数值时,所述过滤条件最小值与所述过滤条件最大值相同。
优选地,在上述的技术方案中,所述过滤组取值表还包括用于记载所需要的附加数据的字段。
优选地,在上述的技术方案中,所述步骤C具体包括:
步骤C1、判断在所述过滤组组合定义表中是否存在第一个过滤组的记录?如果不存在则结束,否则进入步骤C2;
步骤C2、根据当前过滤组的编号,在所述过滤组组合定义表中找出该过滤组中第一个过滤条件的分类号;
步骤C3、通过所得到的当前过滤条件的分类号,在所述过滤组算法定义表中找出当前过滤条件的过滤条件类型、黑白名单标识;
步骤C4、通过所得到的当前过滤条件的分类号,在所述过滤组取值表中找出当前过滤条件的取值记录;
步骤C5、判断数据源中是否存在符合当前过滤条件的数据?如果存在,则进入步骤C6;否则,继续判断在所述过滤组组合定义表中是否存在下一个过滤组的记录?如果存在,则返回步骤C2;否则,结束;
步骤C6、判断当前过滤组内所有过滤条件是否均匹配完毕?如果是则在数据源中查找并输出符合当前过滤组要求的数据,否则返回步骤C 3继续匹配当前过滤组内的下一个过滤条件。
本发明还同时提供了一种使用复杂条件进行数据过滤的系统,其包括:
转换处理单元,其用于将每种类型数据过滤所用的筛选条件转换成由若干个过滤组相互之间以相同逻辑关系进行组合的形式,所述过滤组包括若干个彼此之间以同一逻辑关系进行组合且均为单一过滤要素的过滤条件,并将所得到的过滤组及其过滤条件之间的组合关系记载于数据库表中;
赋值单元,其用于将一个数据过滤所用筛选条件的取值写入所述数据库表中;
第一过滤单元,其用于通过查询所述数据库表获得所述数据过滤中的各过滤条件要求,并依次从数据源中筛选出符合该数据过滤中的各过滤组要求的初选数据;以及
第二过滤单元,其用于根据所述过滤组之间的逻辑关系以及所述初选数据,从数据源中获得符合该数据过滤要求的数据。
优选地,在上述的技术方案中,所述转换处理单元中的过滤组相互之间的逻辑关系是“或”,所述过滤组内的各过滤条件彼此之间的逻辑关系是“与”。
本发明的有益效果在于:在从数据源进行某种类型的数据过滤应用时,针对使用复杂逻辑组合的多种条件来筛选出数据的情形,由于本发明方法与现有技术相比是通过采用先将这些复杂条件进行逻辑关系转换处理,然后再将其重新组合的方式来完成数据过滤的,此外还通过过滤组取值、过滤组算法定义、过滤组组合定义的组合方式(即将过滤要素取值、过滤要素、过滤要素值操作方法进行分解和再整合)来设计提供优化整合的数据源,从而能够使得系统的复杂业务处理能力以及扩展性能实现质的提高,对于增加数据过滤的条件、修改数据过滤的选择条件、提高变更速度等都极其有利,因此适用于所有存在需要使用复杂条件进行数据过滤的情形,尤其是过滤要素和/或过滤要素取值经常发生改变的应用场合。相应地,对于采用了本发明方法的系统,其完全适用于所有的业务处理领域,并且尤其适用于具有复杂逻辑处理应用需求的行业领域,例如金融类联机交易、金融清算、电信类计费、商务网络在线交易等。
总之,本发明方法及其系统具备抗变更能力强、扩展性佳、维护性好、复用性能突出等众多显著优点,可以有效节约并高效利用已有的资源,杜绝严重浪费人力和物力现象的发生。
【附图说明】
以下将结合附图和实施例,对本发明的技术方案作进一步的详细描述。其中:
图1是本发明的使用复杂条件从数据源进行数据过滤的方法的一个较佳实施例的部分流程处理图;
图2是本发明的使用复杂条件从数据源进行数据过滤的方法一个较佳实施例中对复杂条件进行逻辑关系转换处理后的过滤组的组成结构示意图;
图3是本发明的使用复杂条件进行数据过滤的系统的一个较佳实施例的组成结构示意图。
【具体实施方式】
对于任一种类型的使用复杂条件进行数据过滤而言,其实质就是多个条件的复杂组合,即:将符合多个条件的数据从数据源中筛选出来,这个过程被称为“数据过滤”。在数据筛选过程中,那些已经不能再被分解的过滤条件(例如,仅仅针对客户代码、交易时间、终端号等要素的其中之一,可以直接用>、<、=、!等运算符进行表达)则被称为“单一过滤要素”。
在采用本发明方法使用复杂条件进行数据过滤时,首先要将当前数据过滤所使用的复杂条件进行逻辑关系转换处理,从而转换成由若干个过滤组进行组合的形式,并且这些过滤组相互之间的逻辑关系都是完全相同的,在它们之间优选地采用“或”的逻辑关系;而且,在其中的每一个过滤组内都是通过若干个均为单一过滤要素的过滤条件进行组合的,这些过滤条件彼此之间的逻辑关系是相同的,在它们之间优选地采用“与”的逻辑关系。当然,还可以在上述的各过滤组、各过滤条件之间采用其他的逻辑关系。例如,在各过滤组之间采用“与”的逻辑关系,并通过结合“非”的逻辑运算而实现上述优选的“或”逻辑关系的效果。
请参阅图2,该图示出了按照上述的逻辑转换处理复杂条件后所得到的的一个示范性实施例的结构组成。如图2所示,此时的复杂条件已经被转换处理成三个以逻辑“或”关系进行组合的过滤组:过滤组1、过滤组2和过滤组3,即被转换表达成以下的形式:
(过滤组1)OR(过滤组2)OR(过滤组3)
同时,在过滤组1、2和3的内部相应地是由过滤条件1至L、过滤条件1’至M和过滤条件1”至N分别按照逻辑“与”关系进行组合的(L、M和N为相同或不同的正整数),即更具体地是以下的形式:
(过滤条件1AND过滤条件2AND过滤条件3 AND...过滤条件L)OR
(过滤条件1’AND过滤条件2’AND过滤条件3’AND...过滤条件M)OR
(过滤条件1”AND过滤条件2”AND过滤条件3”AND...过滤条件N)
显然,如前所述,在以上表达式中的各过滤条件都属于单一过滤要素,在每一个过滤条件中都能够使用>、<、=、!等运算符直接进行表达。
在完成了上述转换处理后,然后将经转换处理得到的各过滤组及其过滤条件之间的组合关系记载于数据库表中。在一个优选的实施例中,这些数据表包括过滤组组合定义表、过滤组算法定义表和过滤组取值表,以下将对这些数据表的功能、内容和特点等进行详细说明。
对于过滤组组合定义表,它是被用来记载每种类型的数据过滤所包括的过滤组的信息的,这些过滤组的信息应当至少包括过滤组的编号(在该表中是唯一的)、过滤组内各过滤条件的分类号。
对于过滤组算法定义表,它是用来记载各过滤组的具体信息的,这些具体信息应当至少包括过滤组内各过滤条件的分类号(对应于上述的过滤组组合定义表中的过滤组内各过滤条件的分类号)及其过滤方式,而过滤方式则包括过滤条件类型和黑白名单标识。其中,过滤条件类型是指通过数据过滤得到唯一一个数值,还是得到一个数值范围;黑白名单标识则是指使用黑名单模式(指不符合该条件时会被选中)、还是白名单模式(指符合该条件时才会被选中)来选中符合要求的数据。此外,在更为优选的情形下,上述的具体信息还可以包括针对过滤组内各过滤条件的描述,也就是在过滤组算法定义表中增加对各过滤条件进行描述性说明的字段以方便理解和维护、使用。
对于过滤组取值表,它是被用来记载过滤组内各过滤条件的分类号(对应于上述的过滤组组合定义表中的过滤组内各过滤条件的分类号)、各过滤条件的具体取值。对于具体取值而言,它包括过滤条件最小值和过滤条件最大值,并且当过滤组算法定义表中的过滤条件类型为过滤出唯一一个数值时,很显然此时的过滤条件最小值应当与过滤条件最大值相同。此外,在某些情形下还可以在过滤组取值表中增加一些字段,例如用来记载所需要的附加数据等。
在进行某种类型的数据过滤时,先将该数据过滤所使用的筛选条件的取值写入前述的数据库表中,具体而言,在上述的优选实施例中就是写入过滤组取值表中。然后,通过查询数据库表来获得该数据过滤中的各过滤条件要求,并依次从数据源中筛选出符合该数据过滤中的各过滤组要求的初选数据。随后,再根据各过滤组之间的逻辑关系以及上述的初选数据,最终从数据源中查找获得符合该数据过滤所要求的复杂条件的数据。以下通过结合图1可以进一步地理解本发明方法的上述数据过滤处理过程。
如图1所示,它是本发明方法的一个较佳实施例的部分流程处理图,其中包括如下的具体步骤:
首先,在步骤11中判断在过滤组组合定义表中是否存在经过逻辑转换后的全部过滤组中的第一个过滤组的记录?如果不存在则结束操作,否则进入步骤12;
随后,在步骤12中,根据当前过滤组的编号,在过滤组组合定义表中找出该过滤组中第一个过滤条件的分类号;
然后,在步骤13中,通过所得到的当前过滤条件的分类号,在过滤组算法定义表中找出当前过滤条件的过滤条件类型、黑白名单标识;当然,在一些情形下,还可以同时找出如过滤描述等其他的字段信息;
接着,在步骤14中,通过所得到的当前过滤条件的分类号,在过滤组取值表中找出当前过滤条件的取值记录;
在步骤15中,判断数据源中是否存在符合当前过滤条件的数据?如果存在,则进入步骤16;否则,继续判断在过滤组组合定义表中是否存在下一个过滤组的记录?如果存在则返回步骤12,否则结束;
在步骤16中,进一步判断当前过滤组内所有过滤条件是否均匹配完毕?如果是,则在数据源中查找并输出符合当前过滤组要求的数据;否则,返回步骤13继续匹配当前过滤组内的下一个过滤条件。
为了能够更为清楚地理解本发明方法,下面将特别结合一个具体实例来进一步地加以说明。
假定在一个金融交易系统中,需要实现以下的一个交易权限控制:在2010年1月1日到2010年3月1日之间,A地分公司(代码10000001)的行业商户号为111100000000001的商户的交易,只允许接入角色代码(POS终端号)范围为00000000--00000010、且发卡机构为C银行(代码01111000)的卡进行交易。
面对这样复杂的多种条件,可以将其理解为它是由两个部分组成:
(1)在2010年1月1日到2010年3月1日之间,A地分公司(代码10000001)的行业商户号为111100000000001的商户,只允许接入角色代码(POS终端号)为00000000--00000010的终端做交易;
(2)在2010年1月1日到2010年3月1日之间,A地分公司(代码10000001)的行业商户号为111100000000001的商户,只允许刷C银行(代码01111000)的卡;
因此,首先将上述的复杂条件进行逻辑关系转化处理,以形成由以下的几个过滤组进行组合的形式:
(交易时间>=2010年1月1日AND交易时间<=2010年3月1日AND分公司代码=10000001 AND行业商户代码=111100000000001 AND接入角色代码的代码不为00000000--00000010)OR
(交易时间>=2010年1月1日AND交易时间<=2010年3月1日AND分公司代码=10000001 AND行业商户代码=111100000000001 AND发卡机构为非C银行01111000)
对此,可以将以上表达式中的前一部分设定为第一过滤组,其过滤组的编号设为103;并将该表达式中的后一部分设定为第二过滤组,其过滤组的编号设为104。
在数据库中相应地设置如下的过滤组组合定义表、过滤组算法定义表和过滤组取值表,并且将以上的过滤组和过滤条件之间的组合关系记载在这些表当中。
(1)过滤组组合定义表:
过滤组的编号 | 过滤条件的分类号 |
103 | 00 |
103 | 01 |
103 | 07 |
103 | 06 |
104 | 00 |
104 | 01 |
104 | 07 |
104 | 20 |
对于上表中的各字段,具体解释如下:
在过滤组的编号为103的过滤组中,共有4个过滤条件/单一过滤要素:00交易时间、01分公司代码、07行业商户、06接入角色代码;
在过滤组的编号为104的过滤组中,共有4个条件/单一过滤要素:00交易时间、01分公司代码、07行业商户、20发卡机构。
(2)过滤组算法定义表
过滤条件的分类号 | 过滤条件类型 | 黑白名单标识 | 过滤条件的描述 |
00 | R | W | 交易时间 |
01 | S | W | 机构代码 |
07 | S | W | 行业商户 |
06 | R | B | 接入角色代码 |
20 | S | B | 发卡机构 |
对于上表中的各字段,具体解释如下:
00交易时间:是取一段数值范围(以字符R表示),采用白名单模式(以字符W表示);
01分公司代码:是唯一的数值取值(以字符S表示),采用白名单模式;
07商户代码:是唯一的数值取值,采用白名单模式;
06接入角色代码:是取一段数值范围,采用黑名单模式(以字符B表示);
20发卡机构:是唯一的数值取值,采用黑名单模式。
(3)过滤组取值表
过滤条件的分类号 | 过滤条件最小值 | 过滤条件最大值 |
00 | 20100101000000 | 20100301235959 |
01 | 10000001 | 10000001 |
07 | 111100000000001 | 111100000000001 |
06 | 00000000 | 00000010 |
20 | 01111000 | 01111000 |
对于上表中的各字段,具体解释如下:
00交易时间:是取值为20100101000000至2010030123595(即2010年01月01日00:00:00到2010年03月01日23:59:59);
01分公司代码:取值为10000001(A地分公司);
07行业商户:取值为111100000000001;
06接入角色代码:取值范围为00000000至00000010;由于这个取值采用黑名单模式,这意味着接入角色代码的范围为非00000000-00000010之间的终端,才会被过滤出来(被过滤出来的交易都会被决绝);
20发卡机构的:取值为C银行01111000;由于这个取值采用黑名单模式,这意味着发卡机构为非C银行01111000的终端,才会被过滤出来。
经过以上配置,则在采用本发明方法进行数据过滤时,在2010年1月1日到2010年3月1日之间,A地分公司(代码10000001)行业商户号为111100000000001的交易:当其接入角色代码(POS终端号)的范围不为00000000--00000010时,对应于上述第一过滤组的第一组交易数据被筛选出来;当其银行卡的发卡机构不为C银行(代码01111000)时,对应于上述第二过滤组的第二组交易数据也被筛选出来,从而形成了本次数据过滤中的初选数据。由于在本示例中,第一过滤组和第二过滤组之间采用的是“或”的逻辑关系,因此根据该逻辑关系以及第一组交易数据、第一组交易数据,就能够最终从数据源中获得符合当前数据过滤要求的数据,即实现所需要实现的“在2010年1月1日到2010年3月1日之间,A地分公司(代码10000001)的行业商户号为111100000000001的商户的交易,只允许接入角色代码(POS终端号)范围为00000000--00000010、且发卡机构为C银行(代码01111000)的卡进行交易”的数据过滤要求。
通过以上的详细描述,可以显见本发明方法具有以下的优点:
(1)可以非常方便地增加、删除要素,而无须对原系统进行大的修改。例如,如果需要增加“交易金额”这一新的要素,则只要在上述各表中增加对这个新要素的处理,就可以实现增加该要素的功能。
(2)当需要修改相关过滤条件时,只需要相应地修改上述各表即可。例如,如果想在B分公司也实现如上所述的同样交易权限控制,则仅需要在过滤组组合定义表中增加一条关于B分公司的记录即可。
此外,本发明还相应地提供了一种使用复杂条件进行数据过滤的系统。请参阅图3,它示出了该系统的一个较佳实施例的组成结构。如图3所示,在该较佳实施例中包括:转换处理单元4、赋值单元5、第一过滤单元6和第二过滤单元7。其中,转换处理单元4是用来将每种类型数据过滤所用的筛选条件转换成由若干个过滤组(每个过滤组本身则包括若干个均为单一过滤要素的过滤条件)进行组合的形式并将以上得到的过滤组及其过滤条件之间的组合关系记载于数据库表中,上述的各过滤组相互之间设为完全相同逻辑关系(例如“或”),而过滤条件彼此之间设为同一逻辑关系(例如“与”)。赋值单元5是用来将一个数据过滤所使用到得筛选条件的具体取值写入上述的数据库表中,第一过滤单元6是用于通过查询上述的数据库表获得数据过滤中的各过滤条件要求,并依次从数据源中筛选出符合数据过滤中的各过滤组要求的初选数据,而第二过滤单元7则是用来根据过滤组之间的逻辑关系以及所获得的初选数据来从数据源中获得符合数据过滤要求的最终数据。对于本发明系统中涉及到的关于过滤组和过滤组内各过滤条件之间的逻辑关系设置、数据库表的配置、初选数据的获取、符合数据过滤要求的最终数据的获取等内容,都可以一一参照前述的本发明方法中的相应部分,故在此不再赘述。
综上所述,本发明方法和系统由于具备抗变更能力强、扩展性佳、维护性好、复用性能突出等优点,从而相对于现有技术而具备明显优势,因此值得在所有的业务处理领域,尤其适于在具有复杂处理逻辑、过滤要素和/或过滤要素取值经常发生变更的行业领域内(如金融联机交易、金融清算、证券交易、电信计费等)进行广泛推广和应用。
以上列举了若干具体实施例来详细阐明本发明的使用复杂条件从数据源进行数据过滤的方法和系统,这些个例仅供说明本发明的原理及其实施方式之用,而非对本发明的限制,在不脱离本发明的精神和范围的情况下,本领域的普通技术人员还可以作出各种变形和改进,因此所有等同的技术方案均应属于本发明的范畴并为本发明的各项权利要求所限定。
Claims (10)
1.一种使用复杂条件从数据源进行数据过滤的方法,其特征在于,所述方法包括如下步骤:
A、将每种类型数据过滤所用的筛选条件转换成由若干个过滤组相互之间以相同逻辑关系进行组合的形式,所述过滤组包括若干个彼此之间以同一逻辑关系进行组合且均为单一过滤要素的过滤条件,并将所得到的过滤组及其过滤条件之间的组合关系记载于数据库表中;
B、将当前数据过滤所用筛选条件的取值写入所述数据库表中;
C、查询所述数据库表获得当前数据过滤中的各过滤条件要求,并依次从数据源中筛选出符合当前数据过滤中的各过滤组要求的初选数据;以及
D、根据所述过滤组之间的逻辑关系以及所述初选数据,从数据源中获得符合当前数据过滤要求的数据。
2.根据权利要求1所述的方法,其特征在于,所述过滤组相互之间的逻辑关系是“或”,所述过滤条件彼此之间的逻辑关系是“与”。
3.根据权利要求1或2所述的方法,其特征在于,所述数据库表包括:
过滤组组合定义表,其用于记载每种类型数据过滤所包括的过滤组的信息,所述过滤组的信息至少包括过滤组的编号、过滤组内各过滤条件的分类号,并且每一个过滤组的编号是唯一的;
过滤组算法定义表,其用于记载所述过滤组的具体信息,所述具体信息至少包括过滤组内各过滤条件的分类号及其过滤方式;以及
过滤组取值表,其用于记载所述过滤组内各过滤条件的分类号、各过滤条件的具体取值。
4.根据权利要求3所述的方法,其特征在于,所述具体信息还包括对所述过滤组内各过滤条件的描述。
5.根据权利要求3所述的方法,其特征在于,所述过滤方式包括过滤条件类型和黑白名单标识,所述过滤条件类型是指过滤出唯一数值或者一个数值范围,所述黑白名单标识是指使用黑名单或者白名单的选定方式来选中符合要求的数据。
6.根据权利要求5所述的方法,其特征在于,所述具体取值包括过滤条件最小值和过滤条件最大值,并且当所述过滤组算法定义表中的所述过滤条件类型为过滤出唯一数值时,所述过滤条件最小值与所述过滤条件最大值相同。
7.根据权利要求3所述的方法,其特征在于,所述过滤组取值表还包括用于记载所需要的附加数据的字段。
8.根据权利要求3所述的方法,其特征在于,所述步骤C具体包括:
步骤C1、判断在所述过滤组组合定义表中是否存在第一个过滤组的记录?如果不存在则结束,否则进入步骤C2;
步骤C2、根据当前过滤组的编号,在所述过滤组组合定义表中找出该过滤组中第一个过滤条件的分类号;
步骤C3、通过所得到的当前过滤条件的分类号,在所述过滤组算法定义表中找出当前过滤条件的过滤条件类型、黑白名单标识;
步骤C4、通过所得到的当前过滤条件的分类号,在所述过滤组取值表中找出当前过滤条件的取值记录;
步骤C5、判断数据源中是否存在符合当前过滤条件的数据?如果存在,则进入步骤C6;否则,继续判断在所述过滤组组合定义表中是否存在下一个过滤组的记录?如果存在,则返回步骤C2;否则,结束;
步骤C6、判断当前过滤组内所有过滤条件是否均匹配完毕?如果是则在数据源中查找并输出符合当前过滤组要求的数据,否则返回步骤C 3继续匹配当前过滤组内的下一个过滤条件。
9.一种使用复杂条件从数据源进行数据过滤的系统,其特征在于,所述系统包括:
转换处理单元,其用于将每种类型数据过滤所用的筛选条件转换成由若干个过滤组相互之间以相同逻辑关系进行组合的形式,所述过滤组包括若干个彼此之间以同一逻辑关系进行组合且均为单一过滤要素的过滤条件,并将所得到的过滤组及其过滤条件之间的组合关系记载于数据库表中;
赋值单元,其用于将一个数据过滤所用筛选条件的取值写入所述数据库表中;
第一过滤单元,其用于通过查询所述数据库表获得所述数据过滤中的各过滤条件要求,并依次从数据源中筛选出符合该数据过滤中的各过滤组要求的初选数据;以及
第二过滤单元,其用于根据所述过滤组之间的逻辑关系以及所述初选数据,从数据源中获得符合该数据过滤要求的数据。
10.根据权利要求9所述的系统,其特征在于,所述转换处理单元中的过滤组相互之间的逻辑关系是“或”,所述过滤组内的各过滤条件彼此之间的逻辑关系是“与”。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010157790.6A CN102236659B (zh) | 2010-04-27 | 2010-04-27 | 使用复杂条件从数据源进行数据过滤的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010157790.6A CN102236659B (zh) | 2010-04-27 | 2010-04-27 | 使用复杂条件从数据源进行数据过滤的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102236659A true CN102236659A (zh) | 2011-11-09 |
CN102236659B CN102236659B (zh) | 2014-01-15 |
Family
ID=44887317
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010157790.6A Active CN102236659B (zh) | 2010-04-27 | 2010-04-27 | 使用复杂条件从数据源进行数据过滤的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102236659B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103903137A (zh) * | 2012-12-26 | 2014-07-02 | 远光软件股份有限公司 | 一种自动的支付对账方法和系统 |
CN104392376A (zh) * | 2014-11-06 | 2015-03-04 | 中国建设银行股份有限公司 | 一种交易事件处理方法及装置 |
CN104834756A (zh) * | 2015-06-01 | 2015-08-12 | 国家电网公司 | 工程管理中信息的查询方法和装置 |
CN105095240A (zh) * | 2014-05-04 | 2015-11-25 | 中国银联股份有限公司 | 数据库的数据样本采集 |
CN105589906A (zh) * | 2014-12-26 | 2016-05-18 | 中国银联股份有限公司 | 交易报文规范性监控方法 |
CN106611031A (zh) * | 2015-10-27 | 2017-05-03 | 北京国双科技有限公司 | 数据查询方法及装置 |
CN107391532A (zh) * | 2017-04-14 | 2017-11-24 | 阿里巴巴集团控股有限公司 | 数据过滤的方法和装置 |
CN107833133A (zh) * | 2017-11-15 | 2018-03-23 | 中国光大银行股份有限公司信用卡中心 | 一种数据处理方法和装置 |
WO2019011255A1 (zh) * | 2017-07-11 | 2019-01-17 | 成都牵牛草信息技术有限公司 | 通过第三方字段对表单字段的字段值进行授权的方法 |
CN112685611A (zh) * | 2020-12-31 | 2021-04-20 | 恒安嘉新(北京)科技股份公司 | 一种数据过滤方法、装置、存储介质及电子设备 |
CN113254469A (zh) * | 2021-05-21 | 2021-08-13 | 北京百度网讯科技有限公司 | 数据筛选方法及装置、设备和介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101639851A (zh) * | 2009-08-03 | 2010-02-03 | 北京高森明晨信息科技有限公司 | 一种数据存储、查询的方法和装置 |
-
2010
- 2010-04-27 CN CN201010157790.6A patent/CN102236659B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101639851A (zh) * | 2009-08-03 | 2010-02-03 | 北京高森明晨信息科技有限公司 | 一种数据存储、查询的方法和装置 |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103903137B (zh) * | 2012-12-26 | 2017-12-22 | 远光软件股份有限公司 | 一种自动的支付对账方法和系统 |
CN103903137A (zh) * | 2012-12-26 | 2014-07-02 | 远光软件股份有限公司 | 一种自动的支付对账方法和系统 |
CN105095240A (zh) * | 2014-05-04 | 2015-11-25 | 中国银联股份有限公司 | 数据库的数据样本采集 |
CN105095240B (zh) * | 2014-05-04 | 2018-11-27 | 中国银联股份有限公司 | 数据库的数据样本采集 |
CN104392376A (zh) * | 2014-11-06 | 2015-03-04 | 中国建设银行股份有限公司 | 一种交易事件处理方法及装置 |
CN105589906B (zh) * | 2014-12-26 | 2019-02-19 | 中国银联股份有限公司 | 交易报文规范性监控方法 |
CN105589906A (zh) * | 2014-12-26 | 2016-05-18 | 中国银联股份有限公司 | 交易报文规范性监控方法 |
CN104834756B (zh) * | 2015-06-01 | 2018-07-13 | 国家电网公司 | 工程管理中信息的查询方法和装置 |
CN104834756A (zh) * | 2015-06-01 | 2015-08-12 | 国家电网公司 | 工程管理中信息的查询方法和装置 |
CN106611031A (zh) * | 2015-10-27 | 2017-05-03 | 北京国双科技有限公司 | 数据查询方法及装置 |
CN107391532A (zh) * | 2017-04-14 | 2017-11-24 | 阿里巴巴集团控股有限公司 | 数据过滤的方法和装置 |
CN107391532B (zh) * | 2017-04-14 | 2020-08-04 | 阿里巴巴集团控股有限公司 | 数据过滤的方法和装置 |
WO2019011255A1 (zh) * | 2017-07-11 | 2019-01-17 | 成都牵牛草信息技术有限公司 | 通过第三方字段对表单字段的字段值进行授权的方法 |
US11775687B2 (en) | 2017-07-11 | 2023-10-03 | Chengdu Qianniucao Information Technology Co., Ltd. | Method for authorizing field value of form field by means of third party field |
CN107833133A (zh) * | 2017-11-15 | 2018-03-23 | 中国光大银行股份有限公司信用卡中心 | 一种数据处理方法和装置 |
CN112685611A (zh) * | 2020-12-31 | 2021-04-20 | 恒安嘉新(北京)科技股份公司 | 一种数据过滤方法、装置、存储介质及电子设备 |
CN113254469A (zh) * | 2021-05-21 | 2021-08-13 | 北京百度网讯科技有限公司 | 数据筛选方法及装置、设备和介质 |
CN113254469B (zh) * | 2021-05-21 | 2023-08-11 | 北京百度网讯科技有限公司 | 数据筛选方法及装置、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN102236659B (zh) | 2014-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102236659B (zh) | 使用复杂条件从数据源进行数据过滤的方法和系统 | |
Jenkins | How China is reshaping the global economy: Development impacts in Africa and Latin America | |
Putterman | Ownership and the nature of the firm | |
US20160004728A1 (en) | Method, system, and computer program product for managing business customer contacts | |
CN106096906A (zh) | 一种建材企业erp信息管理系统 | |
CN101567068A (zh) | 一种用于财政信息管理的数据处理系统 | |
CN108376364A (zh) | 一种支付系统对账的方法、设备及终端设备 | |
Suomi | On the concept of inter-organizational information systems | |
CN103903082A (zh) | 一种利用erp系统中的单据数据生成会计凭证的方法 | |
Brunnermeier et al. | Mobile money, interoperability, and financial inclusion | |
CN102479336A (zh) | 航天产品结构件制造信息多维度分类编码方法 | |
Atiyas et al. | Anatolian Tigers and the emergence of the devout bourgeoisie in the Turkish manufacturing Industry | |
CN104391986A (zh) | 业务重分类装置和方法 | |
CN111858593A (zh) | 一种分业务板块数据处理系统及方法 | |
ABE | Head and branch offices of big private enterprises in major cities of Japan | |
WO2018167983A1 (ja) | 経営情報システム、方法、およびプログラム | |
CN112837011B (zh) | 一种基于多级物资仓储的精细化管理方法 | |
CN101364898B (zh) | 一种流量平衡稽核的方法及系统 | |
CN114493488A (zh) | 一种面向电网领域的共享服务中心系统 | |
CN101827175A (zh) | 一种话单分拣分目录存储的方法及系统 | |
Modani et al. | Discovery and analysis of tightly knit communities in telecom social networks | |
Kundu | National commission on urbanisation: issues and non-issues | |
CN107943988A (zh) | 一种数据拼接方法及装置 | |
Alwani et al. | Implementation of Dynamic Capability and Sustainable Business Model in the Fashion Industry during the COVID-19 Pandemic-Case Study: Syalwa Indonesia | |
CN101188013A (zh) | 用于实现数据清分的框架系统及应用该框架系统的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C53 | Correction of patent of invention or patent application | ||
CB03 | Change of inventor or designer information |
Inventor after: Huang Jing Inventor after: Liu Zhiyu Inventor after: Ji Naigeng Inventor after: Fu Yisheng Inventor before: Huang Jing Inventor before: Liu Zhiyu |
|
COR | Change of bibliographic data |
Free format text: CORRECT: INVENTOR; FROM: HUANG JING LIU ZHIYU TO: HUANG JING LIU ZHIYU JI NAIGENG FU YISHENG |
|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |