kbys.net
当前位置:首页 >> mysql likE or 正则 >>

mysql likE or 正则

当然是like快,因为正则表达式里面可以匹配的东西太多了,反而会慢下来,当然啦,你数据库不大可能感觉不出来,到大型企业你就可以感觉的出来。 一般来说,大型企业的数据库搜索我们都是用索引。

like简单,只有%和下划线 regexp复杂,功能更强大

通配符:可以用它来替换一个或者多个字符,主要是用于文件搜索时替代不确定字符。 主要成员: 通配符“?”匹配36个字符(英文字母+数字)中的任一个 通配符“*”匹配0个或以上的字符。 方括号("["和"]")括起来的字符范围匹配在此范围内的任意字符,...

在索引相同情况下,效率差不多。不过还要经过严格测试才能知道答案。 说实话,这两个方法效率都不高,原因是使用正则或者like时,一般情况下,索引会失效。 建议使用全文索引。

1,%:表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。 比如 SELECT * FROM [user] WHERE u_name LIKE '%三%' 将会把u_name为“张三”,“张猫三”、“三脚猫”,“唐三藏”等等有“三”的记录全找...

个人看法, 感觉完全匹配的时候,like还是等于效率应该没什么区别。 是不是中文应该也没什么区别。 like更多应该是为了匹配部分符合感觉。

这个。。。 楼主还是测试一下吧 不过话说如果楼主很追求速度的话 建议更换企业级数据库

select * from table1 where name like ‘%[0-9]%’

其中like要求整个数据都要匹配,而REGEXP只需要部分匹配即可。 也就是说,用Like,必须这个字段的所有内容满足条件,而REGEXP只需要有任何一个片段满足即可。

用not like 试试

网站首页 | 网站地图
All rights reserved Powered by www.kbys.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com