【发布时间】:2011-12-02 11:52:32
【问题描述】:
我有以下疑问:
SELECT *
FROM shop_user_member_spots
WHERE delete_flag = 0
ORDER BY date_spotted desc
LIMIT 10
运行时,需要几分钟。该表大约有 250 万行。
这是表格(不是我设计的,但我可以进行一些更改):
最后,这里是索引(同样,不是我做的!):
我一直试图让这个查询快速运行几个小时,但无济于事。
这是 EXPLAIN 的输出:
非常感谢任何帮助/文章。
【问题讨论】:
-
为什么需要在简单选择中给表起别名
-
我没有,这个查询是更大查询的一部分,我没有删除别名。如果它让你更快乐,我现在就删除它:-)
-
大概有多少行(25?200 万?)可能将 deleted_flag 设置为 0?
标签: mysql sql query-optimization filesort