gpt4 book ai didi

sql - MYSQL 大 LIMIT 偏移量

转载 作者:行者123 更新时间:2023-11-29 03:13:30 24 4
gpt4 key购买 nike

我已经为此寻找了解决方案,但遗憾的是,一无所获。

目前我的表正在推送来自 5000 个不同来源的 5800000 行。例如:

CREATE TABLE stores(
store_id INT UNSIGNED PRIMARY_KEY AUTO_INCREMENT,
name VARCHAR(255)
);

CREATE TABLE articles(
article_id INT UNSIGNED PRIMARY_KEY AUTO_INCREMENT
article_name CHAR(80),
article_price INT UNSIGNED,
store_id INT UNSIGNED
);

好的,所以我做了这样的索引:

CREATE INDEX article ON articles(store_id,name);

我以为我让它防弹了,你猜不是。

当我搜索大型数据集,200 000 篇文章时,我发布:

  SELECT article_name,
article_price
FROM articles
WHERE store_id = $id
ORDER BY article_name
LIMIT 100000,20;

回复时间非常长。请帮助? :S

最佳答案

是的,我想通了,因为没有其他人会帮助我 :D

思路如下,当我请求某个页面时,我会执行以下操作:

创建临时表结果(row_id,article_id);设置@行:=0;插入结果 SELECT @row:=(@row+1),article_id FROM articles ORDER BY $sort $order;

然后是一个简单的 SELECT/JOIN:

从结果中选择 *左加入文章 result.article_id = articles.article_idWHERE row_id >= $from AND row_id < $to;

干杯...

关于sql - MYSQL 大 LIMIT 偏移量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4404827/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com