Apache Hive--内置运算符函数&dual测试方式| 学习笔记

开发者学堂课程【大数据 Hive 教程精讲Apache Hive--内置运算符函数&dual测试方式】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/90/detail/1381


Apache Hive--内置运算符函数&dual测试方式


内容介绍:

 Hive函数


Hive函数

1.内置运算符

在 Hive 有四种类型的运算符:

·关系运算符

·算术运算符

·逻辑运算符

·复杂运算

内容较多,见《Hive 官方文档》或者《hive 常用运算和函数.doc》

hive 常用运算

第一部分:关系运算

vHive 支持的关系运算符

常见的关系运算符

等值比较:=T

不等值比较:<六

小于比较:<

小于等于比较:<=

大于比较: >

大于等于比较:>=

空值判断: IS NULL

非空判断: IS NOT NULL

LIKE 比较: LIKEv

JAVA 的 LIKE 操作:RLIKE

REGEXP 操作: REGEXP

等值比较: =

语法:A=B

操作类型:所有基本类型

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

hive> select 1 from dual where 1=1;

²  不等值比较:<>

语法:A<> B

操作类型:所有基本类型

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

举例:

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

²  小于比较:<

语法:A<B

操作类型:所有基本类型。

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

举例:

hive> select 1 from dual where 1<2;

²  小于等于比较:<=v

语法:A<= B

操作类型:所有基本类型

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

举例:

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

²  大于等于比较:>=

逻辑运算与数学运算

Hive 数学运算

²  加法操作:+

²  减法操作: -

²  乘法操作:*

²  除法操作:/

²  取余操作: %

²  位与操作:&

²  位或操作: |

²  位异或操作: ^

²  位取反操作:~

数值运算:

·取整函数: round

·指定精度取整函数: round

·向下取整函数: floor

·向上取整函数: ceil

·向上取整函数 Jceiling

·取随机数函数: rand

·自然指数函数: exp

·以10为底对数函数: log10

·以2为底对数函数: log2

·对数函数: log

·幂运算函数: pow

·幂运算函数: power

·开平方函数: sqrt

·二进制函数: bin

·十六进制函数: hex

·反转十六进制函数: unhex

·进制转换函数: conv

·绝对值函数: abs

·正取余函数: pmod

·正弦函数: sin

·反正弦函数: asin

·余弦函数: cos

·反余弦函数: acos

·positive函数: hositive

·negative函数: negative

日期函数

UNIX 时间戳转日期函数: from..unixtime

·获取当前 UNIx 时间戳函数: unix. Timestamp

·日期转 UNIx 时间戳函数: unix_timestamp

·指定格式日期转 UNIx 时间戳函数: unix_timestamp

·日期时间转日期函数: to_date

·日期转年函数: vear

·日期转月函数: month

·日期转天函数: day

·日期转小时函数: houre

·日期转分钟函数: minute

·日期转秒函数: second

·日期转周函数: weekofyear

·日期比较函数: datediff

·日期增加函数: date_add

·日期减少函数: date_sub

 

2.内置函数

https:/lcwiki.apache.org/confluenceldisplay/Hive/LanguageManual+UDF 测试各种内置函数的快捷方法:

创建一个 dual 表

create table dual(id string);

load 一个文件(只有一行内容:内容为一个空格)到dual表select substr(' angelababy',2,3) from dual;

上一篇:排序分类| 学习笔记


下一篇:Virtualbox报错------> '/etc/init.d/vboxdrv setup'