hive 字符串模糊匹配的实现两种实现方案
字符串模糊匹配在工作中经常会用到,下面我们来看下常用的字符串匹配的实现方式
方案一 like
like 经常用于字符串模糊匹配:语法简单,直接过滤出来满足条件的记录,下面我们取一下地市码表,匹配地市名称带有 阳 的地市名称
select area_desc from temp.dim_area where area_desc like '%阳%';
方案二 locate
locate 返回了匹配项在目标项的索引值,返回索引=0 表示:未匹配到,否则返回第一次出现的索引,也就是说返回值大于0表示匹配成功。
select area_desc from temp.dim_area where locate('阳', area_desc) > 0;
小结
据说locate 要比 like 效率高一点,以后遇到字符串模糊匹配的sql 记得优化一下。