CN101441654A - 数据库检索方法及系统 - Google Patents

数据库检索方法及系统 Download PDF

Info

Publication number
CN101441654A
CN101441654A CNA2008101866627A CN200810186662A CN101441654A CN 101441654 A CN101441654 A CN 101441654A CN A2008101866627 A CNA2008101866627 A CN A2008101866627A CN 200810186662 A CN200810186662 A CN 200810186662A CN 101441654 A CN101441654 A CN 101441654A
Authority
CN
China
Prior art keywords
database
subdomain
merge field
function
expression
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
Application number
CNA2008101866627A
Other languages
English (en)
Other versions
CN101441654B (zh
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.)
Shenzhen Shiji Guangsu Information Technology Co., Ltd.
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN2008101866627A priority Critical patent/CN101441654B/zh
Publication of CN101441654A publication Critical patent/CN101441654A/zh
Application granted granted Critical
Publication of CN101441654B publication Critical patent/CN101441654B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明提供了一种数据库检索方法及系统。所述方法包括以下步骤:A.将数据库中的多个域处理成一合并域,并对各子域进行操作设置;B.根据各子域的操作设置向所述各子域存入数据;C.对用户输入的查询语句进行解析,得到与合并域中各子域的操作设置相关的运算表达式;D.利用所述运算表达式在从数据库导出的合并域中进行查找。所述系统包括数据库和检索装置,数据库包括域处理单元和写操作单元,检索装置包括解析单元和检索单元。本发明在进行数据库检索的过程中,将多个域合并为一个域,然后通过与合并域中各子域的操作设置相关的运算表达式进行检索,不仅降低了数据存储量,并且提高了检索效率。

Description

数据库检索方法及系统
技术领域
本发明涉及计算机技术领域,更具体地说,涉及数据检索。
背景技术
在数据库中,一般通过多个逻辑上关联的数据表存储数据。如下所示的职员个人信息表:
 
工号 姓名 性别 出生日期 婚否 职务
001 张健 05/16/74 T 科员
002 李丽 02/30/71 T 科员
003 江涛 06/12/69 T 科长
004 余得利 12/15/72 F 科员
005 王霞 06/15/63 F 处长
该数据表包含多个域,即上述数据表的表头,例如工号、姓名、性别、出生日期、婚否、职务。
在现有技术的数据库中,进行数据存储时即对检索条件中的域(如工号)建索引(Index),然后在查询时直接构造SQL(Structured Query Language,结构化查询语言)语句进行检索。例如:select姓名,性别,职务from职员个人信息表where工号<=002。它表示从职员个人信息表中查询工号小于或等于002的职员的姓名、性别、职务信息,其中工号<=002是检索条件,正常情况下,数据库将返回张健和李丽的性别、职务。为了方便描述,定义上述SQL语句中的“姓名、性别、职务”为查询域(即需要查询的信息)、“工号”为条件域(即过滤条件)。
若该数据库还需要另外一个数据表描述职务与工资的关系,如下所示:
 
职务 工资
科员 180.00
科长 275.00
处长 350.00
则“职务”把两个数据表关联起来,若需要查询张健的工资,则需要先查询第一个数据表,得到他的职务是科员,然后到第二个表中查询,得到他的工资是180.00。在现有技术中,若分两个数据表存储,无需对增加的每个域建索引,则减少了存储量,但增加了一次检索过程,降低了检索效率;若把两个数据表合并,则只需要查询一次就可以得到张健的工资,但是要对增加的每个域建索引,增加了存储量。这样就形成了检索效率和存储量的矛盾。
发明内容
本发明的目的之一在于提供一种数据库检索方法及系统,旨在降低数据存储量,并提高检索效率。
为了实现发明目的,所述数据库检索系统包括数据库及与其交互的检索装置,所述数据库包括:
域处理单元,将所述数据库中的多个域处理成一合并域,并对所述合并域中的各子域进行操作设置;
写操作单元,根据各子域的操作设置向所述各子域存入数据;
所述检索装置包括:
解析单元,对用户输入的查询语句进行解析,得到与所述各子域的操作设置相关的运算表达式;
检索单元,利用所述解析单元得到的所述运算表达式在从数据库导出的合并域中进行查找。
其中,所述域处理单元包括:
域合并模块,将数据库中的多个域处理成一合并域,所述合并域包含多个子域;
操作设置模块,构建与所述各子域具有映射关系的操作函数。
其中,所述解析单元包括:
分析模块,对用户输入的查询语句进行分析,确定与合并域中各子域对应的运算表达式;
设置关联模块,将所述各子域的操作函数关联到所述各子域对应的运算表达式,得到合并域的运算表达式。
其中,所述检索单元包括:
数据提取模块,将合并域从数据库中导出;
查询模块,利用所述运算表达式在从数据库导出的合并域中进行查找。
所述数据库检索方法包括:
A.将数据库中的多个域处理成一合并域,并对所述合并域中的各子域进行操作设置;
B.根据各子域的操作设置向所述各子域存入数据;
C.对用户输入的查询语句进行解析,得到与合并域中各子域的操作设置相关的运算表达式;
D.利用所述运算表达式在从数据库导出的合并域中进行查找。
其中,所述步骤A中对各子域进行操作设置的过程包括:
构建与各子域具有映射关系的操作函数。
其中,所述操作函数包括写操作函数和读操作函数。
其中,所述写操作函数包括设置函数和清除函数,所述读操作函数包括查询函数。
其中,所述步骤B包括:通过各子域的写操作函数在数据库中插入数据或更新数据。
其中,所述步骤C包括:
C1.对用户输入的查询语句进行分析,确定与合并域中各子域对应的运算表达式;
C2.根据运算表达式中的子域名得到操作函数中的读操作函数;
C3.将读操作函数关联到各子域的运算表达式,从而生成合并域的运算表达式。
其中,所述查询语句包括结构化查询语言。
其中,所述步骤D包括:
D1.从数据库中导出合并域;
D2.调用合并域的运算表达式,并利用所述运算表达式在合并域中进行查找。
其中,若查询记录M是否存在于数据库中,则所述步骤D2包括:
D21对从数据库中导出的合并域进行或逻辑操作;
D22.利用所述运算表达式在所述合并域的或逻辑操作结果中查找所述记录M。
其中,所述步骤D2进一步包括:利用所述运算表达式在每条记录的合并域中查找记录M的详细内容。
由上可知,本发明在进行数据库检索的过程中,将多个域合并为一个域,然后通过与合并域中各子域的操作设置相关的运算表达式进行检索,不仅降低了数据存储量,并且提高了检索效率。
附图说明
图1是本发明一个实施例中数据库检索系统结构图;
图2是本发明一个实施例中域处理单元的结构图;
图3是本发明一个实施例中进行域合并的示意图;
图4是本发明一个实施例中解析单元的结构图;
图5是本发明一个实施例中检索单元的结构图;
图6是本发明一个实施例中数据库检索方法流程图;
图7是图6所示实施例中步骤S51的流程图;
图8是图7所示实施例中步骤S512的流程图;
图9是图6所示实施例中步骤S53的流程图;
图10是图6所示实施例中步骤S54的流程图。
为了使本发明的上述及其它目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。
具体实施方式
图1示出了本发明的一个实施例中数据库检索系统的结构,该系统包括数据库10、检索装置20。应当说明的是,本发明所有图示中各设备之间的连接关系是为了说明其信息交互及控制过程的需要,因此应当视为逻辑上的控制关系。另外需要说明的是,各功能模块之间的通信方式可以采取多种,本发明的保护范围不应限定为某种特定类型的通信方式。
数据库10包括域处理单元11和写操作单元12,其中:
(1)域处理单元11,将数据库10中的多个域处理成一合并域,并对各子域进行操作设置。
(2)写操作单元12,与域处理单元11相连,根据各子域的操作设置向前述的各子域中存入数据。
检索装置20包括解析单元21和检索单元22,其中:
(1)解析单元21,对用户输入的查询语句进行解析,得到与合并域中各子域的操作设置相关的运算表达式。
(2)检索单元22,与解析单元21相连,利用解析单元21得到的所述运算表达式在从数据库10导出的合并域中进行查找。。
图2示出了本发明一个实施例中域处理单元11的结构,包括域合并模块111和操作设置模块112,其中:
域合并模块111将数据库10中的多个域处理成一合并域。
目前数据库支持的域的数据类型有五种:字符型、文本型、数值型、逻辑型、日期型,实际应用中,它们的表达能力可能无法被充分利用,例如用数值型中的UNSIGNED INT类型来描述工资时,它的表达范围是0-4294967295,实际上正常使用的范围可能只是0-10000,则造成了表达能力和存储的浪费。本发明通过域合并模块111对域进行合并,实际上就是进行了压缩存储,主要目的就是为了充分利用数据类型的表达能力,避免存储的浪费。
在一个实例中,进行数据压缩后的数据表定义如下:
 
数据类型 说明
工号 数值(INT) 工号,Index
姓名 字符(char) 职员姓名
出生日期 日期(DATE) 职员出生日期
职员信息 二进制(bin)长度为20比特(bit) 含职员的性别、婚否、职务、工资。其中:1个bit表示性别(0:男,1:女)1个bit表示婚否(0:未婚,1:已婚)2个bit表示职务(00:职员,01:科长、10:处长)14个bit用来表示工资(最大可以表示10000)                        
在进行域合并后的职员信息域中,每个子域(对应合并前的域)占据一段存储,x表示一个bit位,如图3所示。应当说明的是,实际上可以将工号、姓名、出生日期都合并到“职员信息”域中,因为任何类型的数据都可以被二进制类型表示,但工号单独被检索的可能性较大,而姓名和出生日期作为查询域的概率远大于作为条件域的概率,所以在此实例中没有被合并。另外应当说明的是,除了二进制的数据类型,还可以用其他的数据类型来合并表达多个域,如定义N个字符,其中X个字符表示职员姓名,Y个字符表示职员的出生日期,且X+Y<=N。
操作设置模块112,与域合并模块111交互,构建与各子域具有映射关系的操作函数。在本发明中,操作设置模块112首先定义子域的掩码,为了方便程序计算,则进一步定义写操作函数和读操作函数,最后在各操作函数和各子域之间建立一个函数映射表。
在一个实例中,该写操作函数包括设置函数和清除函数,该读操作函数包括查询函数,其中:设置、清除函数在向数据库10插入、更新记录时使用,分别用于设置对应子域的bit位、清除对应子域的bit位;查询函数在向数据库10检索时使用,用于查询对应子域的bit位是否被设置。
图4示出了本发明一个实施例中解析单元21的结构,包括:
分析模块211,对用户输入的查询语句进行分析,得到与合并域中各子域对应的运算表达式。
本发明中,用户输入的查询语句可为多种。在一个实例中,用户输入的查询语句是SQL查询语句,其中包含查询域、条件域等,例如:select姓名,性别,职务from职员个人信息表where工号<=002。当然,本发明还可基于其他类型的查询语句进行操作。
设置关联模块212,与分析模块211交互,将各子域的操作函数关联到运算表达式,得到合并域的运算表达式。
在本发明中,设置关联模块212将操作函数关联到运算表达式的方式有多种。在一个实例中,当分析模块211得到与合并域中各子域对应的运算表达式之后,设置关联模块212则根据运算表达式里出现的子域名,到前述操作设置模块112所建立的函数映射表中找到相应的查询函数指针,替换相应的子域名,得到以函数指针为操作数的运算表达式,因此得到合并域的运算表达式。
图5示出了本发明一个实施例中检索单元22的结构,包括:
数据提取模块221,将合并域从数据库10中导出。在一个实例中,数据提取模块221可从数据库10中导出全部记录的查询域、合并域,由于这一步骤没有施加任何过滤条件,所以速度与数据库10的总数据量成类似正比的关系。
查询模块222,与数据提取模块221进行交互,利用运算表达式在从数据库10导出的合并域中进行查找,得到检索结果。在本发明中,查询模块222可根据不同的查询条件,进行各种类型的检索。
在一个实例中,若要查询数据库10中是否含有符合检索条件的记录,则检索方式是:查询模块222先对全部记录的合并域进行或逻辑操作,然后利用含函数指针的合并域的运算表达式在或逻辑操作的结果中进行查找,根据结果判断是否含有符合条件的记录。在该实例中,对合并域进行或逻辑操作的目的,是为了避免对每条结果的合并域都进行一次函数运算,而是在合并域进行了或逻辑操作之后只做一次函数运算,因此可以大大提高检索效率。
在另一实例中,若要查询数据库10中某条记录的详细内容,则检索方式是:查询模块222利用含函数指针的合并域的运算表达式在每条记录的合并域中进行查找,从而得到过滤结果,也即该条记录的详细内容。
图6示出了本发明一个实施例中数据库检索方法流程。包括以下步骤:
在步骤S51中,将数据库10中的多个域处理成一合并域,并对各子域进行操作设置。
在步骤S52中,根据各子域的操作设置向数据库10存入数据。
在步骤S53中,对用户输入的查询语句进行解析,得到与合并域中各子域的操作设置相关的运算表达式。
在步骤S54中,将运算表达式施加到合并域之上进行查找,得到检索结果。
图7是图5所示实施例中步骤S51的流程图,包括以下步骤:
在步骤S511中,将数据库10中的多个域处理成一合并域。
需要说明的是,目前数据库支持的域的数据类型有五种:字符型、文本型、数值型、逻辑型、日期型,实际应用中,它们的表达能力可能无法被充分利用,例如用数值型中的UNSIGNED INT类型来描述工资时,它的表达范围是0-4294967295,实际上正常使用的范围可能只是0-10000,则造成了表达能力和存储的浪费。本发明通过域合并模块111对域进行合并,实际上就是进行了压缩存储,主要目的就是为了充分利用数据类型的表达能力,避免存储的浪费。
在一个实例中,进行数据压缩后的数据表定义如下:
 
数据类型 说明
工号 数值(INT) 工号,Index
姓名 字符(char) 职员姓名
出生日期 日期(DATE) 职员出生日期
职员信息 二进制(bin)宽度为20bit 含职员的性别、婚否、职务、工资。其中:1个bit表示性别(0:男,1:女)1个bit表示婚否(0:未婚,1:已婚)2个bit表示职务(00:职员,01:科长、10:处长)14个bit用来表示工资(最大可以表示10000)                        
进行域合并后的职员信息域,每个子域(对应合并前的域)占据一段存储,x表示一个bit位。如图3所示。应当说明的是,实际上可以将工号、姓名、出生日期都合并到“职员信息”域中,因为任何类型的数据都可以被二进制类型表示,但工号单独被检索的可能性较大,而姓名和出生日期作为查询域的概率远大于作为条件域的概率,所以在此实例中没有被合并。另外应当说明的是,除了二进制的数据类型,还可以用其他的数据类型来合并表达多个域,如定义N个字符,其中X个字符表示职员姓名,Y个字符表示职员的出生日期,且X+Y<=N。
在步骤S512中,构建与各子域具有映射关系的操作函数。在本发明中,所称的操作函数可包括多种,例如写操作函数和读操作函数。
图8是图6所示实施例中步骤S512的流程图,包括以下步骤:
在步骤S5121中,定义子域的掩码,并构建各子域的操作函数。具体过程是:首先利用操作设置模块112定义子域的掩码,为了方便程序计算,则进一步定义写操作函数和读操作函数,最后在各操作函数和各子域之间建立一个函数映射表。
在该实施例中,写操作函数包括设置函数和清除函数,该读操作函数包括查询函数,其中:设置、清除函数在向数据库10插入、更新记录时使用,分别用于设置对应子域的bit位、清除对应子域的bit位;查询函数在向数据库10检索时使用,用于查询对应子域的bit位是否被设置。
在步骤S5122中,通过各子域的写操作函数在数据库10中插入数据或更新数据。此时则需要利用前述写操作函数中的设置函数设置子域的bit位,利用清除函数清除对应子域的bit位。
图9是图5所示实施例中步骤S53的流程图,包括以下步骤:
在步骤S531中,对用户输入的查询语句进行分析,得到与合并域中各子域对应的运算表达式。在一个实例中,该查询语句是SQL查询语句,其中包含查询域、条件域等,例如:select姓名,性别,职务from职员个人信息表where工号<=002。当然,本发明还可基于其他类型的查询语句进行操作。
在步骤S532中,根据运算表达式中的子域名得到操作函数中的读操作函数。在一个实例中,当分析模块211得到与合并域中各子域对应的运算表达式之后,设置关联模块212根据运算表达式里出现的子域名,到前述操作设置模块112所建立的函数映射表中找到相应的查询函数指针。
在步骤S533中,将读操作函数关联到各子域的运算表达式,从而生成合并域的运算表达式。在一个实例中,当设置关联模块212在函数映射表中找到查询函数指针后,则替换相应的子域名,得到以函数指针为操作数的运算表达式,因此得到包含函数指针的合并域的运算表达式。
图10是图5所示实施例中步骤S54的流程图,包括以下步骤:
在步骤S541中,从数据库10中导出合并域。在一个实例中,数据提取模块221可从数据库10中导出全部记录的查询域、合并域,由于这一步骤没有施加任何过滤条件,所以速度与数据库10的总数据量成类似正比的关系。
在步骤S542中,调用合并域的运算表达式。在一个实例中,查询模块222从设置关联模块212中调用包含函数指针的合并域的运算表达式,用于进行不同检索条件下的查询。
若查询记录M是否存在于数据库10中,则:
步骤S543,对从数据库10中导出的合并域进行或逻辑操作。
步骤S544,利用运算表达式在该合并域的或逻辑操作结果中查找记录M。在该实例中,对合并域进行或逻辑操作的目的,是为了避免对每条结果的合并域都进行一次函数运算,而是在合并域进行了或逻辑操作之后只做一次函数运算,因此可以大大提高检索效率。
若查询记录M的详细内容,则包括:
步骤S545,将运算表达式施加于每条记录的合并域之上,得到过滤结果,也即该记录M的详细内容。
本发明还提供了一个实例。假设某数据库表的定义为如下表:
 
数据类型 说明
ID UNSIGNED INT 流水号、Index
Attr1 char 属性1
Attr2 char 属性2
Attr3 char 属性3
Flag1 BOOL 标志1
Flag2 BOOL 标志2
... ... ...
FlagN BOOL 标志N
设该表有N=64个Flag(标志),且都是BOOL类型的,取值为true或false,是一个开关型的域。表的记录条数为100万,ID、Attr1、Attr2、Attr3是查询域(即经常被查询,但很少作为过滤条件),Flag1-FlagN经常被作为条件域。
假设有一个检索请求:select Attr1、Attr2from Sample where(Flag1&&Flag3‖(Flag2 &&!Flag4)&&!Flag5)&&!(Flag5‖Flag6 &&!Flag4)...,检索条件包含的域非常多,与或非的运算非常复杂,那么常规的检索方法将耗费很长的时间;如果对Flag1-FlagN都建索引,则在大数据量的情形下将增加不少存储,即便如此,速度仍然比较慢。
采用本发明的方法,具体处理过程如下所示:
将Flag1-FlagN合并到一个域,定义为Flag,使用二进制类型(或8字节的长整数),宽度为64bit,每个子域(Flag1-FlagN)占据一个bit,0表示False,1表示true。
定义每个子域(Flag1-FlagN)的掩码:宽度为64bit的长整数(8字节),每个bit代表一个子域(Flag-FlagN),某个bit为1(其余bit均为0)的长整数即是相应的Flag的掩码,如第一个bit为1的长整数是Flag1的掩码。
为了方便程序运算,在掩码的基础上,定义一组函数:bool IsSet(char*Flag Name)、void Set(char*Flag Name)、void Clear(char*Flag Name),分别用于判断某个Flag是否被设置、设置某个Flag的bit位、清除某个Flag的bit位,Flag Name的取值范围为Flag1-FlagN。
定义Flag到函数的映射表:isset_map<Flag Name,IsSet*>,set_map<FlagName,Set*>,clear_map<Flag Name,Clear*>,根据Flag Name可以找到对应的IsSet、Set、Clear函数指针。
插入、更新记录时,若某个Flag需要被设置,则根据子域名Flag1-FlagN到set_map里找到Set函数,若某个Flag需要清除,则到clear_map里找到Clear函数,然后将Set或Clear函数施加到合并域上,即完成对应子域的bit位的设置或清除。
分解检索请求,为方便描述,只取前6个Flag,即Flag1-Flag6。得到查询域:Attr1、Attr2,条件域:Flag1-Flag6,并得到运算表达式:(Flag1&&Flag3‖(Flag2&&!Flag4)&&!Flag5)&&!(Flag5‖Flag6&&!Flag4)。根据Flag Name到isset_map里找到Flag1-Flag6的IsSet函数,假设为F1-F6,则表达式可以被转化为含函数指针的表达式:(F1&&F3‖(F2&&!F4)&&!F5)&&!(F5‖F6&&!F4)。
从数据库10中导出全部记录的Attr1、Attr2、Flag(合并域)到内存,遍历每一条记录,对该记录的Flag域的值进行运算:(F1(Flag)&&F3(Flag)‖(F2(Flag)&&!F4(Flag))&&!F5(Flag))&&!(F5(Flag)‖F6(Flag)&&!F4(Flag)),计算结果为0或1,表示该记录应被过滤或输出。
对于某些查询,例如只需要知道数据库10中是否有符合条件的记录,而不需要知道具体哪条记录符合条件时,直接将全部记录的Flag域进行或逻辑操作,得到一个汇总的Flag,然后将含函数指针的运算表达式施加在这个汇总的Flag上,计算得出1或0,即存在或不存在,这是一个非常快速的过程,比常规方法的效率要高出很多。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (14)

1、一种数据库检索系统,包括数据库及与其交互的检索装置,其特征在于,所述数据库包括:
域处理单元,将所述数据库中的多个域处理成一合并域,并对所述合并域中的各子域进行操作设置;
写操作单元,根据各子域的操作设置向所述各子域存入数据;
所述检索装置包括:
解析单元,对用户输入的查询语句进行解析,得到与所述各子域的操作设置相关的运算表达式;
检索单元,利用所述解析单元得到的所述运算表达式在从数据库导出的合并域中进行查找。
2、根据权利要求1所述的数据库检索系统,其特征在于,所述域处理单元包括:
域合并模块,将数据库中的多个域处理成一合并域,所述合并域包含多个子域;
操作设置模块,构建与所述各子域具有映射关系的操作函数。
3、根据权利要求2所述的数据库检索系统,其特征在于,所述解析单元包括:
分析模块,对用户输入的查询语句进行分析,确定与合并域中各子域对应的运算表达式;
设置关联模块,将所述各子域的操作函数关联到所述各子域对应的运算表达式,得到合并域的运算表达式。
4、根据权利要求3所述的数据库检索系统,其特征在于,所述检索单元包括:
数据提取模块,将合并域从数据库中导出;
查询模块,利用所述运算表达式在从数据库导出的合并域中进行查找。
5、一种数据库检索方法,其特征在于,所述方法包括:
A.将数据库中的多个域处理成一合并域,并对所述合并域中的各子域进行操作设置;
B.根据各子域的操作设置向所述各子域存入数据;
C.对用户输入的查询语句进行解析,得到与合并域中各子域的操作设置相关的运算表达式;
D.利用所述运算表达式在从数据库导出的合并域中进行查找。
6、根据权利要求5所述的数据库检索方法,其特征在于,所述步骤A中对各子域进行操作设置的过程包括:
构建与各子域具有映射关系的操作函数。
7、根据权利要求6所述的数据库检索方法,其特征在于,所述操作函数包括写操作函数和读操作函数。
8、根据权利要求7所述的数据库检索方法,其特征在于,所述写操作函数包括设置函数和清除函数,所述读操作函数包括查询函数。
9、根据权利要求8所述的数据库检索方法,其特征在于,所述步骤B包括:
通过各子域的写操作函数在数据库中插入数据或更新数据。
10、根据权利要求9所述的数据库检索方法,其特征在于,所述步骤C包括:
C1.对用户输入的查询语句进行分析,确定与合并域中各子域对应的运算表达式;
C2.根据运算表达式中的子域名得到操作函数中的读操作函数;
C3.将读操作函数关联到各子域的运算表达式,从而生成合并域的运算表达式。
11、根据权利要求10所述的数据库检索方法,其特征在于,所述查询语句包括结构化查询语言。
12、根据权利要求11所述的数据库检索方法,其特征在于,所述步骤D包括:
D1.从数据库中导出合并域;
D2.调用合并域的运算表达式,并利用所述运算表达式在合并域中进行查找。
13、根据权利要求12所述的数据库检索方法,其特征在于,若查询记录M是否存在于数据库中,则所述步骤D2包括:
D21.对从数据库中导出的合并域进行或逻辑操作;
D22.利用所述运算表达式在所述合并域的或逻辑操作结果中查找所述记录M。
14、根据权利要求12所述的数据库检索方法,其特征在于,所述步骤D2进一步包括:
利用所述运算表达式在每条记录的合并域中查找记录M的详细内容。
CN2008101866627A 2008-12-16 2008-12-16 数据库检索方法及系统 Active CN101441654B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008101866627A CN101441654B (zh) 2008-12-16 2008-12-16 数据库检索方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008101866627A CN101441654B (zh) 2008-12-16 2008-12-16 数据库检索方法及系统

Publications (2)

Publication Number Publication Date
CN101441654A true CN101441654A (zh) 2009-05-27
CN101441654B CN101441654B (zh) 2011-11-09

Family

ID=40726089

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101866627A Active CN101441654B (zh) 2008-12-16 2008-12-16 数据库检索方法及系统

Country Status (1)

Country Link
CN (1) CN101441654B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102004804A (zh) * 2010-12-31 2011-04-06 西北大学 一种范围型数据的存储及查询方法
CN102467563A (zh) * 2010-11-19 2012-05-23 金蝶软件(中国)有限公司 数据检索方法和系统
CN104123390A (zh) * 2014-08-07 2014-10-29 武汉中科麦特技术有限公司 一种本地数据库系统及其检索与更新方法
CN104699788A (zh) * 2015-03-16 2015-06-10 百度在线网络技术(北京)有限公司 数据库查询方法和装置
CN106802900A (zh) * 2015-11-26 2017-06-06 北京国双科技有限公司 基于星形数据库的检索方法及装置
CN109947838A (zh) * 2019-03-26 2019-06-28 中国联合网络通信集团有限公司 一种存储数据的方法及装置
CN112507002A (zh) * 2021-02-03 2021-03-16 杭州逍邦网络科技有限公司 一种数据统计系统、方法、计算机装置和存储介质

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102467563A (zh) * 2010-11-19 2012-05-23 金蝶软件(中国)有限公司 数据检索方法和系统
CN102004804A (zh) * 2010-12-31 2011-04-06 西北大学 一种范围型数据的存储及查询方法
CN102004804B (zh) * 2010-12-31 2012-09-05 西北大学 一种范围型数据的存储及查询方法
CN104123390A (zh) * 2014-08-07 2014-10-29 武汉中科麦特技术有限公司 一种本地数据库系统及其检索与更新方法
CN104123390B (zh) * 2014-08-07 2015-08-19 武汉中科麦特技术有限公司 一种本地数据库系统及其检索与更新方法
CN104699788A (zh) * 2015-03-16 2015-06-10 百度在线网络技术(北京)有限公司 数据库查询方法和装置
CN106802900A (zh) * 2015-11-26 2017-06-06 北京国双科技有限公司 基于星形数据库的检索方法及装置
CN109947838A (zh) * 2019-03-26 2019-06-28 中国联合网络通信集团有限公司 一种存储数据的方法及装置
CN112507002A (zh) * 2021-02-03 2021-03-16 杭州逍邦网络科技有限公司 一种数据统计系统、方法、计算机装置和存储介质
CN112507002B (zh) * 2021-02-03 2021-06-01 杭州逍邦网络科技有限公司 一种数据图表生成系统、方法、计算机装置和存储介质

Also Published As

Publication number Publication date
CN101441654B (zh) 2011-11-09

Similar Documents

Publication Publication Date Title
CN101441654B (zh) 数据库检索方法及系统
Eisner et al. Mathematical techniques for efficient record segmentation in large shared databases
EP1845453A1 (en) Database management device, method and program
US8566308B2 (en) Intelligent adaptive index density in a database management system
EP2663939A2 (en) Systems and methods for high-speed searching and filtering of large datasets
CN110659282B (zh) 数据路由的构建方法、装置、计算机设备和存储介质
JP2009259284A (ja) 圧縮データの構造を問い合わせる方法
CN110555035A (zh) 一种对查询语句进行优化的方法、装置
CN101799808A (zh) 一种数据处理方法及其系统
CN110109910A (zh) 数据处理方法及系统、电子设备和计算机可读存储介质
CN103218365A (zh) 一种SSTable文件数据处理方法及其系统
JPH0773204A (ja) 継承を有するデータ・モデル用の並列テーブル
US7769781B1 (en) Method for labeling data stored in sequential data structures with parameters which describe position in a hierarchy
CN108829707A (zh) 跨业务域的大数据智能分析系统及方法
CN106484815B (zh) 一种基于海量数据类sql检索场景的自动识别优化方法
CN100399338C (zh) 一种数据记录处理方法
CN110874366A (zh) 数据处理、查询方法和装置
CN111708895A (zh) 一种知识图谱系统的构建方法及装置
CN110399396B (zh) 高效的数据处理
CN111309704B (zh) 数据库操作方法和数据库操作系统
JP2015162042A (ja) インデックス管理装置
JP2007048318A (ja) リレーショナルデータベースの処理方法およびリレーショナルデータベース処理装置
El-Hajj et al. Parallel association rule mining with minimum inter-processor communication
JP2004192657A (ja) 情報検索システム、情報検索方法および情報検索用プログラムを記録した記録媒体
CN108304499B (zh) 一种sql连接操作中谓词下推的方法、终端及介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: SHENZHEN SHIJI LIGHT SPEED INFORMATION TECHNOLOGY

Free format text: FORMER OWNER: TENGXUN SCI-TECH (SHENZHEN) CO., LTD.

Effective date: 20131021

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 518044 SHENZHEN, GUANGDONG PROVINCE TO: 518057 SHENZHEN, GUANGDONG PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20131021

Address after: 518057 Tencent Building, 16, Nanshan District hi tech park, Guangdong, Shenzhen

Patentee after: Shenzhen Shiji Guangsu Information Technology Co., Ltd.

Address before: Shenzhen Futian District City, Guangdong province 518044 Zhenxing Road, SEG Science Park 2 East Room 403

Patentee before: Tencent Technology (Shenzhen) Co., Ltd.