在大数据上哪个会更快更好?
SELECT * FROM 'table' where name LIKE 'micky%' OR name LIKE 'molly%'
SELECT * FROM 'table' where name REGEXP '(^micky | ^molly)'
当参数超过 10 时,是否会使较慢的变得更快?
查询速度取决于数据库结构的索引。如果'SELECT'查询包含索引参数,那么你应该使用'LIKE',前提是通配符不是第一个字符。但是如果你的结构中没有索引,那么你可以使用它们中的任何一个。最好测试两种情况下花费的时间。
MySQL regexp 不会使用索引,但如果可能的话,LIKE 会使用索引。因为在这种情况下,您的搜索不以通配符开头,如果索引可用,LIKE 将使用它。
所以答案是,如果你正在搜索它,你应该有一个关于 name 的索引,当你这样做时,LIKE 在这种情况下会更快。