mysql - 'LIKE' 或 'NOT LIKE' 这就是问题所在

标签 mysql sql

我想知道与 NOT LIKE 相比,使用 LIKE 是否有任何特别的性能优势,反之亦然。例如:

假设我有 1000 行(是的,不是很多,但毕竟这只是一个示例),并且只有 50 行在查询数据库使用

SELECT id FROM table WHERE hello LIKE'%world%'

SELECT id FROM table WHERE hello NOT LIKE '%world%'

LIKE 返回 50 而使用 NOT LIKE 返回 950 我的问题不是你应该在任何特定场景中使用哪个,而是你使用的是否有任何性能成本,因为两者都必须“搜索”整个表 :)

最佳答案

没有性能差异。 NOT 只是反转它后面的结果。逻辑反转是一种非常快速的操作,在现代处理器上只需几纳秒....

所有费用都将与选择的行数相关,并为查询的其他部分跟踪它们。

关于mysql - 'LIKE' 或 'NOT LIKE' 这就是问题所在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5829468/

相关文章:

php - SELECT 在 UPDATE 之后给出旧值

mysql - SPLIT_STR 不适用于外语

PHP 用方法调用查询

Android SQLite 按非主键列选择

java - PostgreSQL getSequence 当前值并传递给 id

sql - 如何使用 DBMS_OBFUSCATION_TOOLKIT.MD5 将 VARCHAR2 散列为字母数字

sql - Postgres 最小函数性能

python - 如何使用 python 从 MySql 表循环解析模式

mysql - 如何使用存储过程设置新触发器值?

mysql - SQL 查询 INNER JOIN 4 个表