[发明专利]整型列与字符串比较的方法、装置、服务器及存储介质有效
申请号: | 201810307318.2 | 申请日: | 2018-04-08 |
公开(公告)号: | CN108536819B | 公开(公告)日: | 2021-05-04 |
发明(设计)人: | 望声宜;王家贤 | 申请(专利权)人: | 上海达梦数据库有限公司 |
主分类号: | G06F16/903 | 分类号: | G06F16/903 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 201203 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 整型 字符串 比较 方法 装置 服务器 存储 介质 | ||
1.一种整型列与字符串比较的方法,其特征在于,所述方法包括:
获取查询语句中的过滤条件;
在所述过滤条件为整型列与字符串比较时,确定所述整型列的数据类型为目标数据类型;
根据所述过滤条件中的关系运算符,将所述字符串转换为所述目标数据类型,并确定转换后的值;
将所述整型列通过所述关系运算符与所述转换后的值进行比较并检索,得到检索结果集;
所述将所述整型列通过所述关系运算符与所述转换后的值进行比较并检索,得到检索结果集,包括:
将所述整型列中的数据通过所述关系运算符与所述转换后的值进行比较,按照预设比较规则,确定比较结果;在所述比较结果为真时,将所述整型列中对应的数据填充到检索结果集中;
所述根据所述过滤条件中的关系运算符,将所述字符串转换为所述目标数据类型,并确定转换后的值,包括:
根据所述过滤条件中的关系运算符,确定所述关系运算符的类型;
在所述关系运算符的类型为有效类型时,根据所述关系运算符的预设处理规则将所述字符串转换为目标数据类型,得到转换后的值;其中,当所述关系运算符为等于、不等于、小于、小于等于或大于等于时,所述关系运算符的类型为有效类型;
其中,所述根据所述关系运算符的预设处理规则将所述字符串转换为目标数据类型,得到转换后的值,包括:
使用标签值对数据溢出或数据截断进行标记,其中标签值包括:空、非空、标签最大值、标签最小值,标签值等于非空时表示转换后的数值有效;
若所述关系运算符是等于或不等于,在转换过程中数据溢出或数据截断,使用空和非空以外的其它标签值进行标记;
若所述关系运算符是大于或小于等于,向下取整;
若所述关系运算符是大于等于或小于,则向上取整;
取整之后的数据若小于目标数据类型最小值时,标记为标签最小值,若大于所述目标数据类型最大值时,标记为标签最大值;若未发生溢出,得到正常数值;
其中,所述预设比较规则包括:根据所述关系运算符类型与转换后值确定比较结果;所述转换后的值包括标签最大值、标签最小值、数值其中一种;
若所述转换后的值为标签最大值或标签最小值说明数据转换发生截断,需要根据所述关系运算符确定比较结果,包括:
如果关系运算符是等于,比较结果恒假;
如果关系运算符是不等于,比较结果恒真;
如果关系运算符是大于或大于等于,标签最大值则比较结果恒假,标签最小值则比较结果恒真;
如果关系运算符是小于或小于等于,标签最大值则比较结果恒真,标签最小值则比较结果恒假;
若所述转换后的值为数值,则按照正常逻辑进行数值比较。
2.根据权利要求1所述的方法,其特征在于,根据所述关系运算符的预设处理规则将所述字符串转换为目标数据类型,得到转换后的值,包括:
在所述字符串是整数或者小数点后全为0时,将所述字符串转换为目标数据类型,得到转换后的值;在字符串不是整数且小数点后不全为0时,根据所述关系运算符和截断数据的预设转换规则,将所述字符串转换为目标数据类型,得到转换后的值;
在将所述字符串转换为目标数据类型发生溢出时,根据溢出类型确定标签最大值或标签最小值为所述转换后的值,其中,标签最大值和标签最小值是对溢出类型的标记。
3.根据权利要求1所述的方法,其特征在于,还包括:
在确定转换后的值时,确定转换后的值的标签类型。
4.根据权利要求1所述的方法,其特征在于,将所述整型列通过所述关系运算符与所述转换后的值进行比较并检索,得到检索结果集,包括:
根据所述整型列上的二级索引,将所述整型列通过所述关系运算符与所述转换后的值进行比较并检索,得到检索结果集。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海达梦数据库有限公司,未经上海达梦数据库有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810307318.2/1.html,转载请声明来源钻瓜专利网。