orcale和hive常用函数对照表(?代表未证实)

函数分类 oracle hive 说明
字符函数 upper(‘coolszy‘) upper(string A) ucase(string A) 将文本字符串转换成字母全部大写形式
lower(‘KUKA‘) lower(string A) lcase(string A) 将文本字符串转换成字母全部小写形式
initcap(‘kuKA aBc‘)  将每个单词的首字母大写,其他位置的字母小写
concat(‘Hello‘,‘ world‘) concat(string A, string B…) 连接多个字符串,合并为一个字符串,可以接受任意数量的输入字符串
substr(‘hello‘,2,3) substr(string A, int start, int len) substring(string A, int start, int len) 从文本字符串中指定的位置指定长度的字符。                             
length(‘hello‘) length(string A) 返回字符串的长度
lpad(‘smith’,10,‘*‘) lpad(string str, int len, string pad) 返回指定长度的字符串,给定字符串长度小于指定长度时,由指定字符从左侧填补
rpad(‘smith’,10,‘*‘) rpad(string str, int len, string pad) 返回指定长度的字符串,给定字符串长度小于指定长度时,由指定字符从右侧填补。
trim(‘ Mr Simth  ‘) trim(string A) 删除字符串两端的空格,字符之间的空格保留
ltrim(‘ Mr Simth  ‘) ltrim(string A) 删除字符串左边的空格,其他的空格保留
rtrim(‘ Mr Simth  ‘) rtrim(string A) 删除字符串右边的空格,其他的空格保留
reverse(‘abcdef’) reverse(string A) 返回倒序字符串
replace(‘HELLO‘,‘L‘,‘x‘) regexp_replace(string A, string B, string C) 字符串A中的B字符被C字符替代
ascii(‘A‘)  ascii(string str) 返回字符串中首字符的数字值
chr(54740) 给出整数,返回对应的字符
concat_ws(string SEP, string A, string B…) 链接多个字符串,字符串之间以指定的分隔符分开。
parse_url(string urlString, string partToExtract [, string keyToExtract]) 返回URL指定的部分。parse_url(‘http://facebook.com/path1/p.php?k1=v1&k2=v2#Ref1′, ‘HOST’) 返回:’facebook.com’
space(int n) 返回指定数量的空格
repeat(string str, int n) 重复N次字符串
split(string str, string pat) 将字符串转换为数组。
regexp_extract(string subject, string pattern, int index) 通过下标返回正则表达式指定的部分。regexp_extract(‘foothebar’, ‘foo(.*?)(bar)’, 2) returns ‘bar.’
sentences(string str, string lang, string locale) 将字符串中内容按语句分组,每个单词间以逗号分隔,最后返回数组。 例如sentences(‘Hello there! How are you?’) 返回:( (“Hello”, “there”), (“How”, “are”, “you”) )
e() 返回e的值
pi() 返回pi的值
instr(‘oracle traning‘,‘ra‘,1,2) find_in_set(string str, string strList) 在一个字符串中搜索指定的字符,返回发现指定的字符的位置
get_json_object(string json_string, string path) get_json_object(‘{"store":{"fruit":[{"weight":8,"type":"apple"},{"weight":9,"type":"pear"}],"bicycle":{"price":19.95,"color":"red"}},"email":"[email protected]_fo_json_udf_test.net","owner":"amy"}‘, ‘$.store.fruit‘)
数值函数 round(double a) round(double a) 四舍五入
trunc(412.23,2) 舍去小数,但不进位(正数表示小数点后,表示小数点前)
abs(-100) abs(double a) 返回指定值的绝对值
asin(0.5) asin(double a) 返回x的反正弦,即是X。
acos(-1) acos(double a) 返回X的反余弦,即余弦是X,
ceil(3.1415927)  ceil(3.1415927)  返回大于或等于给出数字的最小整数
sin(20) sin(double a) 返回给定角度的正弦值
cos(-3.1415927) cos(double a) 返回余弦
sqrt(64) sqrt(double a) sqrt(double a) 返回数值的平方根
exp(2) exp(double a) 返回e的n次方
floor(2345.67) floor(double a) 对给定的数字取整数
rand(),rand(int seed) 返回大于或等于0且小于1的平均分布随机数(依重新计算而变)
ln(2.7182818) ln(double a) 返回一个数字的对数值
LOG(n1,n2) log(double base, double a) 返回给定底数及指数返回自然对数
power(2,10) pow(double a, double p) power(double a, double p) 返回某数的乘幂
ROUND和TRUNC round(double a)round(double a, int d) 按照指定的精度进行舍入
SIGN sign(double a) 取数字n的符号,大于0返回1,小于0返回-1,等于0返回0
tan(20) tan(double a) 返回数字的正切值
atan(1)  atan(1)  返回一个数字的反正切值
conv(BIGINT num, int from_base, int to_base) 将指定数值,由原来的度量体系转换为指定的试题体系。例如CONV(‘a’,16,2),返回。参考:’1010′ 
positive(int a) positive(double a) 返回A的值,例如positive(2),返回2。
negative(int a) negative(double a) 返回A的相反数,例如negative(2),返回-2。
mod(int a, int b) mod(double a, double b) pmod(int a, int b) pmod(double a, double b) 返回a除b的余数的绝对值
日期函数 sysdate  返回当前日期
months_between(sysdate,‘16-6月 -09‘) 返回两个日期之间的月数 
add_months(sysdate,4) 返回加上指定月数后的日期
TO_DATE(string,‘format‘) 将字符串转化为ORACLE中的一个日期
TO_CHAR(date,‘format‘) 将日期格式成所需要的类型
next_day(sysdate,‘星期一‘) 返回当前日期之后的下一个星期一的日期
last_day(sysdate) 求本月的最后一天 
NEW_TIME(date,‘this‘,‘that‘) 给出在this时区=other时区的日期和时间
to_date(string timestamp) 返回时间中的年月日: to_date(“1970-01-01 00:00:00″) = “1970-01-01″
unix_timestamp(string date, string pattern) 指定时间输入格式,返回到1970年秒数:unix_timestamp(’2009-03-20′, ‘yyyy-MM-dd’) = 1237532400 参考:
unix_timestamp(string date) 指定日期参数调用UNIX_TIMESTAMP(),它返回参数值’1970- 01 – 0100:00:00′到指定日期的秒数。
unix_timestamp() 如果不带参数的调用,返回一个Unix时间戳(从’1970- 01 – 0100:00:00′到现在的UTC秒数)为无符号整数。
year 返回指定时间的年份,范围在1000到9999,或为”零”日期的0。
month(string date) 返回指定时间的月份,范围为1至12月,或0一个月的一部分,如’0000-00-00′或’2008-00-00′的日期。
day(string date) dayofmonth(date) 返回指定时间的日期
hour(string date) 返回指定时间的小时,范围为0到23。
minute(string date) 返回指定时间的秒,范围为0到59。
weekofyear(string date) 返回指定日期所在一年中的星期号,范围为0到53。
datediff(string enddate, string startdate) 两个时间参数的日期之差。
date_sub(string startdate, int days) 给定时间,在此基础上减去指定的时间段。
date_add(string startdate, int days) 给定时间,在此基础上加上指定的时间段。
聚合函数 avg avg 求平均值
count count 统计数据
max max 求最大值
VARIANCE(DISTINCT|ALL) covar_samp(col1, col2) 两列数值样本协方差
var_pop(col) 返回指定列的方差
STDDEV(distinct|all) var_pop(col) 求标准差,ALL表示对所有的值求标准差,DISTINCT表示只对不同的值求标准差
min min 求最小值
sum sum 求和
percentile(col, p) 返回数值区域的百分比数值点。0<=P<=1,否则返回NULL,不支持浮点型数值。
stddev_pop(col) 返回指定列的偏差
corr(col1, col2) 返回两列数值的相关系数
转换函数 to_number(st[,fmt])  st从字符型数据转换成按指定格式的数值,缺省时数值格式串的大小正好为整个数
to_char(m[,fmt]) m从一个数值转换为指定格式的字符串fmt缺省时,fmt值的宽度正好能容纳所有的有效数字
cast(expr as <type>) 类型转换。例如将字符”1″转换为整数:cast(’1′ as bigint),如果转换失败返回NULL。
hex(BIGINT a) hex(string a) 将整数或字符转换为十六进制格式
unhex(string a) 十六进制字符转换由数字表示的字符。
bin(BIGINT a) 返回二进制格式
degrees(double a)  将值从弧度到度
radians(double a)  将值从度转换为弧度
nvl(m,n)  colalese 如果m值为null,返回n,否则返回m
COALESCE(T v1, T v2, …) 返回一组数据中,第一个不为NULL的值,如果均为NULL,返回NULL。
RAWTOHEXT 将一个二进制构成的字符串转换为十六进制
HEXTORAW 将一个十六进制构成的字符串转换为二进制
ROWIDTOCHAR 将ROWID数据类型转换为字符类型
TO_MULTI_BYTE 将字符串中的单字节字符转化为多字节字符
CHARTOROWID 将字符数据类型转换为ROWID类型
其他 GREATEST 返回一组表达式中的最大值,即比较字符的编码大小.
LEAST 返回一组表达式中的最小值 
UID 返回标识当前用户的唯一整数
USER 返回当前用户的名字
USEREVN 返回当前用户环境的信息,opt可以是:
ENTRYID,SESSIONID,TERMINAL,ISDBA,LABLE,LANGUAGE,CLIENT_INFO,LANG,VSIZE
GROUP BY GROUP BY 主要用来对一组数进行统计
HAVING 无(where子句代替) 对分组统计再加限制条件
ORDER BY ORDER BY/sort by 用于对查询到的结果进行排序输出
DECODE when\case 当a=b时,返回c;当a=d时,返回e,否则返回f。
? distinct 去掉重复的
? desc/asc 升序/降序排列
逻辑函数 or 逻辑或
? and 逻辑和
not 逻辑非
多表join join 等值连接
left semi join 半连接
left right outer join 外连接
增加的hive函数   TO_DATE(v_txdate,‘YYYYMMDD‘) 格式化所需要的日期
ADD_MONTHS(TO_DATE(v_txdate,0) 增加月数
LAST_DAY(v_dealyyyymm) 返回每个月最后一天
MONTHS_BETWEEN(v_dealyyyymm1,v_dealyyyymm2) 返回两个日期之间的月数 
       
?:未证实      
时间: 2024-08-26 10:52:10

orcale和hive常用函数对照表(?代表未证实)的相关文章

hive常用函数

来源:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF Complex Type Constructors The following functions construct instances of complex types. Constructor Function Operands Description map (key1, value1, key2, value2, ...) Creates a m

NIOS II常用函数整理-感谢slam原创

IO操作函数函数原型:IORD(BASE, REGNUM) 输入参数:BASE为寄存器的基地址,REGNUM为寄存器的偏移量函数说明:从基地址为BASE的设备中读取寄存器中偏移量为REGNUM的单元里面的值.寄存器的值在地址总线的范围之内.返回值: - 函数原型:IOWR(BASE, REGNUM, DATA)输入参数:BASE为寄存器的基地址,REGNUM为寄存器的偏移量,DATA为要写入的数据函数说明:往偏移量为REGNUM寄存器中写入数据.寄存器的值在地址总线的范围之内.返回值: - 函数

【转】JNI学习积累之一 ---- 常用函数大全

原文网址:http://blog.csdn.net/qinjuning/article/details/7595104 本文原创,转载请注明出处:http://blog.csdn.net/qinjuning 最近一段时间,在工作方面比较闲,分配的Bug不是很多,于是好好利用这段时间就着源代码看了些许模块, 主要方式 还是贼看贼看代码, 同时利用烧机的便利,加Log观看,基本上都能弄个脸熟 .心里想着该写点什么了?可是水平不够,再加上 包括很多真正实现地方--中间层,基本上没看.于是乎,也就不好卖

[转载]JNI学习积累之一 ---- 常用函数大全

本文转载于:http://blog.csdn.net/qinjuning 最近一段时间,在工作方面比较闲,分配的Bug不是很多,于是好好利用这段时间就着源代码看了些许模块, 主要方式 还是贼看贼看代码, 同时利用烧机的便利,加Log观看,基本上都能弄个脸熟 .心里想着该写点什么了?可是水平不够,再加上 包括很多真正实现地方--中间层,基本上没看.于是乎,也就不好卖弄了. 花了几天时间研究了下JNI,基本上知道如何使用了.照我的观点JNI还是不难的,难得只是我们一份尝试的心. 学习过程中, 发现关

PHP常用函数备用

刚学习php的时候,我也为记忆php函数苦恼不已.认为干嘛记忆这么枯燥无味的东西呢?用的时候查一下手册不就行了吗?但是当时因为身在辅导机构,还是记忆了一大堆自己并不感兴趣的函数. 由此就想起来,小的时候背诵的那些古诗词.小的时候并不能理解这古诗词里面的意思.可是随着慢慢的长大,到了一处陌生的城市,每逢节日不能回家和父母团聚的时候,我们就会不由自主的嘀咕起来:独在异乡为异客,每逢佳节倍思亲.当我们与朋友聚会的时候,我们会感叹:今朝有酒今朝醉,莫使金樽空对月.当我们于朋友离别的时候,我们会说:海内存

SQL SERVER系统表和常用函数介绍

sysaltfiles 主数据库 保存数据库的文件 syscharsets 主数据库 字符集与排序顺序sysconfigures 主数据库 配置选项syscurconfigs 主数据库 当前配置选项sysdatabases 主数据库 服务器中的数据库syslanguages 主数据库 语言syslogins 主数据库 登陆帐号信息sysoledbusers 主数据库 链接服务器登陆信息sysprocesses 主数据库 进程 sysremotelogins主数据库 远程登录帐号syscolumn

PHP开发常用函数和必须会的函数总结 --带例子

PHP开发常用函数 在共过开发中,我经常要用到一些PHP函数,有时会不记得,这里把这些常用函数总结到一起.本篇列举了PHP程序员开发中经常用到的php函数.几乎每个函数都有例子,老手可以看看当做温习,新手可以背理论,然后把例子敲他几遍,后面再开发中,开发效率绝对有所提高.例子大多取自w3cschool标准例子和网上的一些资源,部分为个人所写,均经过测试.如果要装载本文,还请注明来源 :http://blog.csdn.net/qq_22327455. 一.检查函数 1.empty() empty

Hive常用语句

1Hive简介 Hive对我来说就是一个基于HDFS的数据仓库,它提供了一个种类SQL语言(和SQL标准基本一样又有一些特殊的地方不一样),能让不精通Java语言而熟悉SQL语言的工程师,快速的对HDFS或其他存储文件系统如Amazon,S3,上的数据进行数据分析,是Hadoop生态系统中非常重要的一个工具.对于大数据分析师而言,HiveQL则是必须要掌握的一个工具. 2.Hive常用语句 2.1菜鸟建表法 1.直接建表,指定分隔符,默认存储为text,也可以指定存储格式! create tab

常用函数

字符串函数: concat ('xiao','qun'); =====>xiaoqun insert('woshixiaozou',10,3,'qun'); =====> woshixiaoqun select lower('XIAOQUN'),upper('xiaoqun'); =====> xiaoqun XIAOQUN select left('xiaoqunwoshi',7),right('xiaoqunwoshi',5); =====>xiaoqun woshi sele