我试图在 MYSQL SELECT 查询中包含一个限制。 我的数据库的结构是这样的,如果在第一列中找到一条记录,那么在该列之后最多只能找到 5000 条同名记录。
例子:
mark
..mark repeated 5000 times
john
anna
..other millions of names
所以在这个表中,找到第一个标记,并从那个标记继续向下搜索最多 5000 行会更有效。
有没有可能做这样的事情?
最佳答案
只需在名称列上创建一个 btree 索引:
CREATE INDEX name ON your_table(name) USING BTREE
每次查找名称时,mysql 都会默默地执行您想要的操作。
关于mysql - 优化 SELECT 查询,知道我们正在处理一个有限的范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9802098/