-1

我必须弄清楚一个数字(由于前导零而存储为字符串)是否落在特定范围内。范围如下所示:

12 - 14
3456 - 4567

1233435 将被视为属于第一个范围(匹配从左侧开始)。该数字最多可以有 20 位数字,我有一个包含所有范围的文件。我导入了范围,将尾随零添加到下限,尾随九添加到上限以达到 20 的长度。这是为了能够处理可变长度数字 - 它们在右侧填充零,以便我可以执行以下查询:

SELECT * FROM ranges WHERE 'my padded number' BETWEEN bound_lower AND bound_upper

由于我有几千个范围,我想在表格上放一个索引,但我不确定如何实现这一点。

谢谢,孟德尔

4

1 回答 1

0

这似乎是您采取的有效方法。要添加索引,您只需:

 CREATE INDEX between_index on ranges (bound_lower, bound_upper);

您可以使用 EXPLAIN 验证它是否正常工作。

于 2012-09-24T10:55:07.477 回答