gpt4 book ai didi

sql - IN(1, 2...n) 查询优化

转载 作者:可可西里 更新时间:2023-11-01 07:29:26 25 4
gpt4 key购买 nike

据我所知,如果使用 IN(1, 2...n) 查询,mysql 不会使用索引。我错了吗?或者有什么我可以做的让 mysql 使用它吗?我不是指 IN() 子查询优化,因为这在手册中有明确解释。

示例(假设所有字段上都有一个索引,名为index_abc):

WHERE a = 1 AND b = 2 AND c = 3 - 然后它使用 index_abc

WHERE a = 2 AND b IN (2, 4, 5) AND C = 3 - 那么它不会

预先感谢您的帮助。

最佳答案

是什么决定了 IN 表达式中的值来自何处?很可能是用户输入,或者是应该在某个表中的东西。应该在表中的事物的例子包括硬编码的查找值。甚至用户输入也可以先插入到某处的表格中。然后您可以使用 JOIN 而不是 IN 并且您的索引将正常工作。

关于sql - IN(1, 2...n) 查询优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2371954/

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