gpt4 book ai didi

mysql - 从查询中删除 'using filesort'

转载 作者:行者123 更新时间:2023-11-30 23:34:50 27 4
gpt4 key购买 nike

我有以下查询:

SELECT    *
FROM shop_user_member_spots
WHERE delete_flag = 0
ORDER BY date_spotted desc
LIMIT 10

运行时,需要几分钟。该表大约有 250 万行。

这是表格(不是我设计的,但我可以做一些修改):

database table

最后,这里是索引(同样,不是我做的!): indexes

几个小时以来,我一直试图让这个查询快速运行,但无济于事。

这里是 EXPLAIN 的输出: explain output

非常感谢任何帮助/文章。

最佳答案

根据您的查询,您想要的索引似乎在 (delete_flag, date_spotted) 上。您有一个包含两列的索引,但 id 列位于它们之间,这会使索引无助于根据 date_spotted 进行排序。现在 mysql 是否会使用基于 Zohaib 的答案的索引我不能说(抱歉,我最常使用 SQL Server)。

关于mysql - 从查询中删除 'using filesort',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8355936/

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