1 .一种基于分组信息的等值查询方法,其特征在于:
对连接表中的连接列进行排序和分组,排序是以数据值的大小进行前后排序,分组是
基于基数排序的数据进行重复值区域的划分,并对所述区域内数据递归的调用所述数据排
序和分组方法,最终得到排序后的数据和分组结果;
获取至少两个连接表中连接列的排序和分组结果,比较连接表当前组、当前连接列的
数据值大小,根据数据值大小比较结果,基于数值大小排序的方向更换分组,对于分组的所
有连接列均相等的,则将连接表分组数据作为查询结果输出。
2 .根据权利要求1所述的一种基于分组信息的等值查询方法,其特征在于:所述排序和
分组,是对当前连接列的数据进行排序,通过排序后的数据,找出当前连接列的重复值区
域,以分成不同的组,对于重复值区域,若当前连接列不是最后一个连接列,则对区域内的
数据,进行排序和分组,层层排序分组完成后,再对下一个当前连接列进行排序和分组,直
至最终排序分组完成,合并分组结果。
3 .根据权利要求1所述的一种基于分组信息的等值查询方法,其特征在于:为当前连接
列设定下标,基于下标对当前连接列的区域内数据进行层层排序和分组,完成后,下标后
移,进行下一个当前连接列的区域内数据层层排序和分组,通过下标进行分组结果的合并。
4 .根据权利要求1所述的一种基于分组信息的等值查询方法,其特征在于:再当前连接
列排序后,标记当前连接列所有重复值区域的起始位置和长度;在完成全部分组后,在全部
分组结果中追加区域的起始位置和长度。
5 .根据权利要求1所述的一种基于分组信息的等值查询方法,其特征在于:所述左、右
连接表中,连接列的排序是根据其数据值大小,自左向右、自上而下依次增大;
构建外层循环,以循环执行内层循环,直到当前左表或右表没有更多组为止,输出查询
结果集;
构建内层循环,若左连接表当前组的当前连接列数据值大于右连接表当前组的当前连
接列数据值,则将右连接表的下一个组作为当前组,并停止内层循环;若左连接表当前组的
当前连接列的数据值小于右连接表当前组的当前连接列的数据值,则将左连接表的下一个
组作为当前组,并停止内层循环;若左、右连接表当前组在所有连接列都相等,则将当前左、
右连接表追加到查询结果集,并且将左、右连接表的下一个组作为当前组。
6 .根据权利要求5所述的一种基于分组信息的等值查询方法,其特征在于:设定并维护
左、右连接表当前组的下标;当所述左连接表当前组的当前连接列数据值大于右连接表当
前组的当前连接列数据值时,将右连接表的当前组的下标向后移;当所述左连接表当前组
的当前连接列的数据值小于右连接表当前组的当前连接列的数据值时,将左连接表的当前
组的下标向后移;当所述左、右连接表当前组在所有连接列都相等时,将左、右连接表的当
前组作的下标均向后移。
7 .根据权利要求5所述的一种基于分组信息的等值查询方法,其特征在于:所述左、右
连接表当前组在所有连接列都相等时,则将左连接表当前组内每行和右连接表当前组内每
行组成一行结果,追加到查询结果集。
8.一种数据库系统,其特征在于:所述数据库系统支持权利要求1所述的一种基于分组
信息的等值查询方法,进行数据查询。
权 利 要 求 书
1/1 页
2
评论