当前位置:首页 > 数据库 > SQlite

喜欢SQLite(甚至是MysQL)

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这样的db有一些技巧可以在所有情况下使用索引,但MySQL和SQLite却没有.


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!