Hive函数

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

关系运算

等值比较: =

语法:A = B

操作类型: 所有基本类型

描述: 如果表达式A与表达式B相等,则为TRUE;否则为FALSE

举例:

hive> select 1 from dual where 1=1;

1

不等值比较: <>

语法: A <> B

操作类型: 所有基本类型

描述: 如果表达式A为NULL,或者表达式B为NULL,返回NULL;如果表达式A 与表达式B不相等,则为TRUE;否则为FALSE

举例:

hive> select 1 from dual where 1 <> 2;

1

小于比较: <

语法: A < B

操作类型: 所有基本类型

描述: 如果表达式A为NULL,或者表达式B为NULL,返回NULL;如果表达式A 小于表达式B,则为TRUE;否则为FALSE

举例:

hive> select 1 from dual where 1 < 2;

1

小于等于比较: <=

语法: A <= B

操作类型: 所有基本类型

描述: 如果表达式A为NULL,或者表达式B为NULL,返回NULL;如果表达式A 小于或者等于表达式B,则为TRUE;否则为FALSE

举例:

hive> select 1 from dual where 1 <= 1;

1

大于比较: >

语法: A > B

操作类型: 所有基本类型

描述: 如果表达式A为NULL,或者表达式B为NULL,返回NULL;如果表达式A 大于表达式B,则为TRUE;否则为FALSE

举例:

hive> select 1 from dual where 2 > 1;

1

大于等于比较: >=

语法: A >= B

操作类型: 所有基本类型

描述: 如果表达式A为NULL,或者表达式B为NULL,返回NULL;如果表达式A 大于或者等于表达式B,则为TRUE;否则为FALSE

举例:

hive> select 1 from dual where 1 >= 1;

1

String的比较要注意(常用的时间比较可以先to_date之后再比较) hive> select * from udftest;

OK

2011111209 00:00:00 2011111209

hive> select a,b,ab,a=b from udftest;

2011111209

00:00:00 2011111209 false true false 空值判断: IS NULL

语法: A IS NULL

操作类型: 所有类型

描述: 如果表达式A的值为NULL,则为TRUE;否则为FALSE

举例:

hive> select 1 from dual where null is null;

1

非空判断: IS NOT NULL

语法: A IS NOT NULL

操作类型: 所有类型

描述: 如果表达式A的值为NULL,则为FALSE;否则为TRUE

举例:

hive> select 1 from dual where 1 is not null;

1

LIKE比较: LIKE

语法: A LIKE B

操作类型: strings

描述: 如果字符串A或者字符串B为NULL,则返回NULL;如果字符串A符合表达式B的正则语法,则为TRUE;否则为FALSE。B中字符”_”表示任意单个字符,而字符”%”表示任意数量的字符。

举例:

hive> select 1 from dual where ‘football’ like ‘foot%’;

1

hive> select 1 from dual where ‘football’ like ‘foot____’;

1

JAVA的LIKE操作: RLIKE

语法: A RLIKE B

操作类型: strings

描述: 如果字符串A或者字符串B为NULL,则返回NULL;如果字符串A符合JAVA 正则表达式B的正则语法,则为TRUE;否则为FALSE。

举例:

hive> select 1 from dual where ‘footbar’ rlike ‘^f.*r$’;

1

REGEXP操作: REGEXP

语法: A REGEXP B

操作类型: strings

描述: 功能与RLIKE相同

举例:

hive> select 1 from dual where ‘footbar’ REGEXP ‘^f.*r$’;

1

数学运算

加法操作: +

语法: A + B

操作类型:所有数值类型

说明:返回A与B相加的结果。结果的数值类型等于A的类型和B的类型的最小父类型(详见数据类型的继承关系)。比如,int + int 一般结果为int类型,而int + double 一般结果为double类型

举例:

hive> select 1 + 9 from dual;

10

hive> create table udftest as select 1 + 1.2 from dual;

hive> describe udftest;

_c0 double

减法操作: -

语法: A – B

操作类型:所有数值类型

说明:返回A与B相减的结果。结果的数值类型等于A的类型和B的类型的最小父类型(详见数据类型的继承关系)。比如,int –int 一般结果为int类型,

相关文档
最新文档