我是靠谱客的博主 曾经水杯,最近开发中收集的这篇文章主要介绍Like rlike在hive中的区别likerlike,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Hive 中可以用 like 和 rlike 进行模糊匹配,like 采用的是 SQL 通配符,而 rlike 采用的是正则匹配。

like

% 代替 0 或多个字符
_ 代替一个字符

举个例子

-- 返回值为 TRUE
select 'aaa' like '%a%'
-- 返回值为 TRUE
select 'aaa' like '_a_'

rlike

rlike 采用正则表达式,以下总结几个常用的

: 转义用,序列 \ 匹配
^: 匹配输入字符串开始的位置
$: 匹配输入字符串结尾的位置
*: 零次或多次匹配前面的字符或子表达式
?: 零次或一次匹配前面的字符或子表达式
x|y: 匹配 x 或 y
[xyz]: 字符集。匹配包含的任一字符
w: 匹配任何字类字符,包括下划线
.: 匹配所有单个字符


此外,还可以用 regexp 替换 rlike,用 not regexp 替换 not rlike ,效果一样。

-- 返回值为 TRUE
select 'asd_VAC_sasfj' rlike '_VAC_'
-- 返回值为 TRUE
select 'hello' regexp '^he'
-- 返回值为 FALSE
select 'hello' regexp '^e'
-- 返回值为 TRUE
select 'hello' regexp 'llo$'
-- 返回值为 TRUE
select 'hello' regexp 'hello|world'
-- 返回值为 TRUE
select 'hello' regexp 'h[\w]llo'
-- 返回值为 TRUE
select 'hello' rlike 'h.llo'

最后

以上就是曾经水杯为你收集整理的Like rlike在hive中的区别likerlike的全部内容,希望文章能够帮你解决Like rlike在hive中的区别likerlike所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(57)

评论列表共有 0 条评论

立即
投稿
返回
顶部