下面的两个查询之间是否存在性能差异?
SELECT * FROM mytable WHERE name IN ('ABC');
SELECT * FROM mytable WHERE name = ('ABC');
下面的两个查询之间是否存在性能差异?
SELECT * FROM mytable WHERE name IN ('ABC');
SELECT * FROM mytable WHERE name = ('ABC');
IN
不,单值和单值没有区别=
。您可以使用EXPLAIN EXTENDED检查查询执行计划:
EXPLAIN EXTENDED SELECT * FROM mytable WHERE name IN ('ABC');
SHOW WARNINGS;
不,我相信 MySQLx IN (a, b, c)
会在x = a OR x = b OR x = c
内部重写,所以它是同一个查询。