mysql之SQLite 中的 LIKE(甚至 MysQL)
zengkefu
阅读:1005
2023-08-24 23:31:47
评论:0
LIKE 关键字会使用 SQLite 和/或 MySQL 中的索引吗?
我会理解通配符匹配可能不会使用索引,但是以比较开头的情况如何?
请您参考如下方法:
这取决于:
WHERE field1 LIKE 'test' << can use index
WHERE field1 LIKE 'test%' << can also use index
WHERE field1 LIKE '%test' << cannot use index
WHERE field1 LIKE '_test' << cannot use index
只要通配符在开头,就不能使用索引。如果您在通配符之前有固定数据,则可以使用索引。
一些数据库如 PostgreSQL 有允许在所有情况下使用索引的技巧,但 MySQL 和 SQLite 没有。
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。