运算符 |
类型 |
说明 |
A = B |
所有原始类型 |
如果A与B相等,返回TRUE,否则返回FALSE |
A == B |
无 |
失败,因为无效的语法。 SQL使用”=”,不使用”==”。 |
A <> B |
所有原始类型 |
如果A不等于B返回TRUE,否则返回FALSE。如果A或B值为”NULL”,结果返回”NULL”。 |
A < B |
所有原始类型 |
如果A小于B返回TRUE,否则返回FALSE。如果A或B值为”NULL”,结果返回”NULL”。 |
A <= B |
所有原始类型 |
如果A小于等于B返回TRUE,否则返回FALSE。如果A或B值为”NULL”,结果返回”NULL”。 |
A > B |
所有原始类型 |
如果A大于B返回TRUE,否则返回FALSE。如果A或B值为”NULL”,结果返回”NULL”。 |
A >= B |
所有原始类型 |
如果A大于等于B返回TRUE,否则返回FALSE。如果A或B值为”NULL”,结果返回”NULL”。 |
A IS NULL |
所有类型 |
如果A值为”NULL”,返回TRUE,否则返回FALSE |
A IS NOT NULL |
所有类型 |
如果A值不为”NULL”,返回TRUE,否则返回FALSE |
A LIKE B |
字符串 |
如果A或B值为”NULL”,结果返回”NULL”。字符串A与B通过sql进行匹配,如果相符返回TRUE,不符返回FALSE。B字符串中 的”_”代表任一字符,”%”则代表多个任意字符。例如: (‘foobar’ like ‘foo’)返回FALSE,( ‘foobar’ like ‘foo_ _ _’或者 ‘foobar’ like ‘foo%’)则返回TURE |
A RLIKE B |
字符串 |
如果A或B值为”NULL”,结果返回”NULL”。字符串A与B通过java进行匹配,如果相符返回TRUE,不符返回FALSE。例如:( ‘foobar’ rlike ‘foo’)返回FALSE,(’foobar’ rlike ‘^f.*r$’ )返回TRUE。 |
A REGEXP B |
字符串 |
与RLIKE相同。 |
返回类型 |
函数 |
说明 |
BIGINT |
round(double a) |
四舍五入 |
DOUBLE |
round(double a, int d) |
小数部分d位之后数字四舍五入,例如round(21.263,2),返回21.26 |
BIGINT |
floor(double a) |
对给定数据进行向下舍入最接近的整数。例如floor(21.2),返回21。 |
BIGINT |
ceil(double a), ceiling(double a) |
将参数向上舍入为最接近的整数。例如ceil(21.2),返回23. |
double |
rand(), rand(int seed) |
返回大于或等于0且小于1的平均分布随机数(依重新计算而变) |
double |
exp(double a) |
返回e的n次方 |
double |
ln(double a) |
返回给定数值的自然对数 |
double |
log10(double a) |
返回给定数值的以10为底自然对数 |
double |
log2(double a) |
返回给定数值的以2为底自然对数 |
double |
log(double base, double a) |
返回给定底数及指数返回自然对数 |
double |
pow(double a, double p) power(double a, double p) |
返回某数的乘幂 |
double |
sqrt(double a) |
返回数值的平方根 |
string |
bin(BIGINT a) |
返回二进制格式,参考:http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_hex
|
string |
hex(BIGINT a) hex(string a) |
将整数或字符转换为十六进制格式。参考:http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_hex
|
string |
unhex(string a) |
十六进制字符转换由数字表示的字符。 |
string |
conv(BIGINT num, int from_base, int to_base) |
将指定数值,由原来的度量体系转换为指定的试题体系。例如CONV(‘a’,16,2),返回。参考:’1010′ http://dev.mysql.com/doc/refman/5.0/en/mathematical-functions.html#function_conv |
double |
abs(double a) |
取绝对值 |
int double |
pmod(int a, int b) pmod(double a, double b) |
返回a除b的余数的绝对值 |
double |
sin(double a) |
返回给定角度的正弦值 |
double |
asin(double a) |
返回x的反正弦,即是X。如果X是在-1到1的正弦值,返回NULL。 |
double |
cos(double a) |
返回余弦 |
double |
acos(double a) |
返回X的反余弦,即余弦是X,,如果-1<= A <= 1,否则返回null. |
int double |
positive(int a) positive(double a) |
返回A的值,例如positive(2),返回2。 |
int double |
negative(int a) negative(double a) |
返回A的相反数,例如negative(2),返回-2。 |
返回类型 |
函数 |
说明 |
string |
from_unixtime(bigint unixtime[, string format]) |
UNIX_TIMESTAMP参数表示返回一个值’YYYY- MM – DD HH:MM:SS’或YYYYMMDDHHMMSS.uuuuuu格式,这取决于是否是在一个字符串或数字语境中使用的功能。该值表示在当前的时区。 |
bigint |
unix_timestamp() |
如果不带参数的调用,返回一个Unix时间戳(从’1970- 01 – 0100:00:00′到现在的UTC秒数)为无符号整数。 |
bigint |
unix_timestamp(string date) |
指定日期参数调用UNIX_TIMESTAMP(),它返回参数值’1970- 01 – 0100:00:00′到指定日期的秒数。 |
bigint |
unix_timestamp(string date, string pattern) |
指定时间输入格式,返回到1970年秒数:unix_timestamp(’2009-03-20′, ‘yyyy-MM-dd’) = 1237532400 参考:http://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html
|
string |
to_date(string timestamp) |
返回时间中的年月日: to_date(“1970-01-01 00:00:00″) = “1970-01-01″ |
string |
to_dates(string date) |
给定一个日期date,返回一个天数(0年以来的天数) |
int |
year(string date) |
返回指定时间的年份,范围在1000到9999,或为”零”日期的0。 |
int |
month(string date) |
返回指定时间的月份,范围为1至12月,或0一个月的一部分,如’0000-00-00′或’2008-00-00′的日期。 |
int |
day(string date) dayofmonth(date) |
返回指定时间的日期 |
int |
hour(string date) |
返回指定时间的小时,范围为0到23。 |
int |
minute(string date) |
返回指定时间的分钟,范围为0到59。 |
int |
second(string date) |
返回指定时间的秒,范围为0到59。 |
int |
weekofyear(string date) |
返回指定日期所在一年中的星期号,范围为0到53。 |
int |
datediff(string enddate, string startdate) |
两个时间参数的日期之差。 |
int |
date_add(string startdate, int days) |
给定时间,在此基础上加上指定的时间段。 |
int |
date_sub(string startdate, int days) |
给定时间,在此基础上减去指定的时间段。 |
返回类型 |
函数 |
说明 |
int |
length(string A) |
返回字符串的长度 |
string |
reverse(string A) |
返回倒序字符串 |
string |
concat(string A, string B…) |
连接多个字符串,合并为一个字符串,可以接受任意数量的输入字符串 |
string |
concat_ws(string SEP, string A, string B…) |
链接多个字符串,字符串之间以指定的分隔符分开。 |
string |
substr(string A, int start) substring(string A, int start) |
从文本字符串中指定的起始位置后的字符。 |
string |
substr(string A, int start, int len) substring(string A, int start, int len) |
从文本字符串中指定的位置指定长度的字符。 |
string |
upper(string A) ucase(string A) |
将文本字符串转换成字母全部大写形式 |
string |
lower(string A) lcase(string A) |
将文本字符串转换成字母全部小写形式 |
string |
trim(string A) |
删除字符串两端的空格,字符之间的空格保留 |
string |
ltrim(string A) |
删除字符串左边的空格,其他的空格保留 |
string |
rtrim(string A) |
删除字符串右边的空格,其他的空格保留 |
string |
regexp_replace(string A, string B, string C) |
字符串A中的B字符被C字符替代 |
string |
regexp_extract(string subject, string pattern, int index) |
通过下标返回正则表达式指定的部分。regexp_extract(‘foothebar’, ‘foo(.*?)(bar)’, 2) returns ‘bar.’ |
string |
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’ |
string |
get_json_object(string json_string, string path) |
select a.timestamp, get_json_object(a.appevents, ‘$.eventid’), get_json_object(a.appenvets, ‘$.eventname’) from log a; |
string |
space(int n) |
返回指定数量的空格 |
string |
repeat(string str, int n) |
重复N次字符串 |
int |
ascii(string str) |
返回字符串中首字符的数字值 |
string |
lpad(string str, int len, string pad) |
返回指定长度的字符串,给定字符串长度小于指定长度时,由指定字符从左侧填补。 |
string |
rpad(string str, int len, string pad) |
返回指定长度的字符串,给定字符串长度小于指定长度时,由指定字符从右侧填补。 |
array |
split(string str, string pat) |
将字符串转换为数组。 |
int |
find_in_set(string str, string strList) |
返回字符串str第一次在strlist出现的位置。如果任一参数为NULL,返回NULL;如果第一个参数包含逗号,返回0。 |
array<array<string>> |
sentences(string str, string lang, string locale) |
将字符串中内容按语句分组,每个单词间以逗号分隔,最后返回数组。 例如sentences(‘Hello there! How are you?’) 返回:( (“Hello”, “there”), (“How”, “are”, “you”) ) |
array<struct<string,double>> |
ngrams(array<array<string>>, int N, int K, int pf) |
SELECT ngrams(sentences(lower(tweet)), 2, 100 [, 1000]) FROM twitter; |
array<struct<string,double>> |
context_ngrams(array<array<string>>, array<string>, int K, int pf) |
SELECT context_ngrams(sentences(lower(tweet)), array(null,null), 100, [, 1000]) FROM twitter; |
返回类型 |
函数 |
说明 |
bigint |
count(*) , count(expr), count(DISTINCT expr[, expr_., expr_.]) |
返回记录条数。 |
double |
sum(col), sum(DISTINCT col) |
求和 |
double |
avg(col), avg(DISTINCT col) |
求平均值 |
double |
min(col) |
返回指定列中最小值 |
double |
max(col) |
返回指定列中最大值 |
double |
var_pop(col) |
返回指定列的方差 |
double |
var_samp(col) |
返回指定列的样本方差 |
double |
stddev_pop(col) |
返回指定列的偏差 |
double |
stddev_samp(col) |
返回指定列的样本偏差 |
double |
covar_pop(col1, col2) |
两列数值协方差 |
double |
covar_samp(col1, col2) |
两列数值样本协方差 |
double |
corr(col1, col2) |
返回两列数值的相关系数 |
double |
percentile(col, p) |
返回数值区域的百分比数值点。0<=P<=1,否则返回NULL,不支持浮点型数值。 |
array<double> |
percentile(col, array(p~1,,\ [, p,,2,,]…)) |
返回数值区域的一组百分比值分别对应的数值点。0<=P<=1,否则返回NULL,不支持浮点型数值。 |
double |
percentile_approx(col, p[, B]) |
Returns an approximate p^th^ percentile of a numeric column (including floating point types) in the group. The B parameter controls approximation accuracy at the cost of memory. Higher values yield better approximations, and the default is 10,000. When the number of distinct values in col is smaller than B, this gives an exact percentile value. |
array<double> |
percentile_approx(col, array(p~1,, [, p,,2_]…) [, B]) |
Same as above, but accepts and returns an array of percentile values instead of a single one. |
array<struct\{‘x’,'y’\}> |
histogram_numeric(col, b) |
Computes a histogram of a numeric column in the group using b non-uniformly spaced bins. The output is an array of size b of double-valued (x,y) coordinates that represent the bin centers and heights |
array |
collect_set(col) |
返回无重复记录 |
相关推荐
Hive 函数参考手册 Hive 函数是 Hive 中的内置函数,用于对数据进行处理和分析。这些函数可以分为四大类:关系运算符、算术运算符、逻辑运算符和复杂类型函数。 关系运算符用于比较两个值是否相等、不等、或是否...
以下是对Hive函数的一些详细解释: 1. 内置运算符: - 关系运算符:这些运算符用于比较两个值,如`=`、`<>`(不等于)、`、`>`、`和`>=`。它们都处理NULL值,如果其中任何一方为NULL,结果也将是NULL。`==`是无效...
标题“1_hive函数大全.pdf”表明本文档是一份全面介绍Hive函数的手册。Hive是一个建立在Hadoop之上的数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的SQL查询功能,能将SQL语句转换为...
### HIVE常用函数参考手册知识点概述 #### 一、函数分类 Hive中的函数可以根据其功能和作用范围分为几大类: 1. **简单函数**:这类函数通常针对单条记录进行操作,如数学运算、逻辑运算等。 2. **聚合函数**:...
### Hive常用函数参数手册 #### 一、简介 在大数据处理领域,Hive作为一个广泛使用的数据仓库工具,提供了丰富的内置函数来支持数据的处理与分析。本文档旨在介绍Hive中的常用函数及其用法,帮助用户更好地理解和应用...
对于想要开发自定义函数、优化Hive性能或进行复杂数据分析的开发者来说,这是极其重要的参考资料。 总的来说,这个压缩包提供的资料对于学习和开发Hadoop及Hive项目非常有价值。通过阅读和理解这些文档,开发者能够...
这个“ODPS参考手册”是学习和使用ODPS的重要资源,它包含了ODPS的各项操作和功能的详细介绍。 在大数据领域,ODPS作为一款云端的数据仓库工具,其主要功能包括数据存储、数据处理和数据挖掘。ODPS基于Hadoop生态...
- **hive函数大全.doc**:这可能是一份详细列出Hive支持的各种内置函数的参考手册,帮助用户在编写HQL时查找和使用各种函数。 - **hive_installation and load data.doc**:这份文档可能介绍了如何安装Hive以及如何...
7. `docs`目录:可能包含项目的文档,如使用手册、API参考等,通常是用Sphinx或其他文档工具生成的。 8. `examples`目录:示例代码或脚本,帮助用户了解如何使用库。 `hive_builder`库可能利用了Python的`thrift`库...
Scala是Spark的主要编程语言,提供函数式和面向对象编程特性。在安装Scala后,开发人员可以使用Scala编写Spark应用。 八、Flume Flume是用于收集、聚合和移动大量日志数据的工具,尤其适用于日志分析。其安装目录为...
这本“Hadoop HbaseHive 帮助手册”很可能包含了这些技术的详细使用方法、API参考以及最佳实践,特别是“HBase 0.94.18 API.chm”文件,应该提供了关于HBase 0.94.18版本的API接口和功能介绍。学习这个手册,读者...
SQL(Structured Query Language)是一种用于管理和处理关系数据库的强大语言,广泛应用于数据查询、更新、插入和...无论你是数据库管理员、开发人员还是数据分析者,这个手册都将是你学习和工作中不可或缺的参考资料。
例如,`HiveQL函数手册.doc`和`HiveQL中自带的数学函数.docx`中详细介绍了HiveQL提供的内置函数,包括统计函数、数学函数等,这些函数可以帮助用户进行复杂的数据计算和分析。 在Hadoop生态系统中,Hive主要负责...
《Spark SQL大数据实例开发教程》是一本专注于...本书适合Spark初学者和进阶者,不仅作为入门教材,也可以作为开发过程中的参考手册。通过这本书,读者将能够全面理解Spark SQL的内部工作原理,提升大数据处理的技能。
《Hadoop中文手册》是全面了解和掌握Hadoop这一分布式计算框架的重要参考资料。Hadoop作为开源的大数据处理工具,已经成为大数据领域不可或缺的一部分。本手册详细阐述了Hadoop的架构、核心组件以及操作方法,旨在...
Sybase IQ 15.4是一种列式数据库管理系统,具备Shared-Everything MPP(大规模并行处理)...由于文档的信息量较大,这里仅概述了部分内容,实际操作和管理Sybase IQ 15.4时,需要参考完整的文档内容和相关的技术支持。
这份指南涵盖了从基础环境配置到实际项目实施的全过程,对于想深入理解并应用Hadoop的人来说,是一份宝贵的参考资料。 1. **Hadoop简介**:Hadoop是由Apache基金会开发的开源框架,基于Java编写,设计目标是处理和...
《Hadoop权威指南(第2版)》是深入理解并掌握Hadoop及其生态系统的重要参考资料,尤其对于想要在大数据处理和分布式计算领域深化学习的专业人士来说,这本书无疑是一份宝贵的资源。书中详尽地阐述了Hadoop的核心...