gpt4 book ai didi

Mysql 查询使用索引排序但仍然给出 “using where”

转载 作者:行者123 更新时间:2023-11-29 17:54:44 24 4
gpt4 key购买 nike

我在以下查询中遇到问题:

select * 
from testtable
where user_id = 1 and color = 1 and size = 1
order by created_at desc, id desc;

我使用了两个索引

  • index1(用户 ID、颜色、尺寸)
  • index2(created_at,id)

但是我在解释结果中得到了“using where, using filesort”

然后我更改了索引以使用所有五列

  • index1(user_id ... id)

“使用文件排序”消失了,但我仍然得到“使用位置”

为了完全使用此查询的索引,我应该采取哪些进一步的步骤?

enter image description here

enter image description here

谢谢

最佳答案

第一个索引用于where。如果您还想使用索引进行排序,那么您需要在(user_id, color, size,created_at, id)上建立索引。

关于Mysql 查询使用索引排序但仍然给出 “using where”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48956439/

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