Mysql 如何将每1000个数字索引在一起

Mysql 如何将每1000个数字索引在一起,mysql,indexing,Mysql,Indexing,我有一个带有“billnumber”列的表(INT 11) billnumber值可能每3或4条记录更改一次,因此,如果我为1M记录编制索引,我将有一个250K索引 我想要的是把每1000个billnumber索引在一起 -从1到1000 -从1001年到2000年,真的有问题吗 索引(billnumber)是非唯一的,这将很容易返回3或4行: SELECT ... WHERE bill_number = 1234 如果要选择1..1000,只需执行以下操作 SELECT ...

我有一个带有“billnumber”列的表(INT 11)

billnumber值可能每3或4条记录更改一次,因此,如果我为1M记录编制索引,我将有一个250K索引

我想要的是把每1000个billnumber索引在一起 -从1到1000
-从1001年到2000年,真的有问题吗

索引(billnumber)
是非唯一的,这将很容易返回3或4行:

SELECT ...
    WHERE bill_number = 1234
如果要选择1..1000,只需执行以下操作

SELECT ...
    WHERE bill_number BETWEEN 1 AND 1000;
两者都是高效的

请记住,数据库表没有顺序。要对行进行排序,必须使用
orderby


同时,
索引
尝试使
WHERE
ORDER BY
高效。

是的,请看,我没有在这个pots中找到我的答案。谢谢您的帮助,更加努力!!!!!我需要一个直接的答案,如果你有。。。如果没有,谢谢你的帮助effort@AhmedTaha第一条评论中的链接不是为了回答您的问题,而是为了向您展示如何改进您的问题,使其符合主题并具有可回答性。是的,这不是一个问题,我只是担心“选择”性能要解决选择性能问题,我们需要实际的
select
(尽管我们可能建议更改以提高性能)和
显示创建表
(尽管我们可能建议更改索引和/或数据类型)。