`
gaozzsoft
  • 浏览: 427081 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

Impala内置函数

 
阅读更多

 

impala内置函数:

 

 

数值处理:

 

select abs()    绝对值

 

select power(2,5)   求幂

 

select sin/cos/tan/asin/acos/atan/atan2()   三角函数

 

select bin()   十进制转换二进制

 

ceil()   返回大于参数的最小整数

 

floor() 返回小于参数的最大整数

 

conv(23,16,2)  第一个参数从第二个参数16进制转变成第三个参数2进制

 

degrees(3.14159)   约等于180   弧度转角度

 

factorial(5)  5的阶乘

 

fmod/mod/%(11.0,9.0)    2       取余

 

fnv_hash(type v)  返回64位hash值

 

greatest(bigint a[, bigint b ...]), greatest(double a[, double b ...]), greatest(decimal(p,s) a[, decimal(p,s) b ...]), greatest(string a[, string b ...]), greatest(timestamp a[, timestamp b ...])  返回最大值

 

least(bigint a[, bigint b ...]), least(double a[, double b ...]), least(decimal(p,s) a[, decimal(p,s) b ...]), least(string a[, string b ...]), least(timestamp a[, timestamp b ...])

 

precision()   scale()  返回精确度

 

rand() 产生0-1随机数

 

select truncate(3.456,7)  3.4560000   保留小数位

 

 

 

字符处理:

 

1 连接函数

 

concat('hello',',','world')   hello,world

 

concat_ws(string sep, string a, string b...)

 

group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符'])  分组拼接,组名相同的字符串用分隔符连接在一起,不写分隔符默认为逗号

 

group_concat(string s [, string sep])

 

分割

 

split_part('x,y,z', ',', 2)       y   返回第二个分隔符前字符,分割字符串

 

substr(string a, int start [, int len]), substring(string a, int start [, int len])

 

2 搜索函数

 

locate(string substr, string str[, int pos])  返回位置

 

 instr('hello world', 'o', -1)  从第三个参数位置开始数 返回位置

 

find_in_set(string str, string strList) 返回位置

 

instr(string str, string substr [, bigint position [, bigint occurrence ] ])

Purpose: Returns the position (starting from 1) of the first occurrence of a substring within a longer string.

Return type: int

 

regexp_extract(字符串, 正则表达式, 返回格式) 返回格式0 返回全部

 

字符串正则表达式解析函数。  功能强大

 

提取字母的正则表达式:([0-9]+)

 

提取数字的正则表达式:([a-z]+)

 

提取中文的正则表达式:([啊-龥]+)

 

select regexp_extract('wde我的qw','[啊-龥]+',0)   我的

 

 这个函数有点类似于 substring(str from 'regexp')

 

 

 

3 属性函数

 

cast(expr AS type)

 

describe table_name   表格描述

 

typeof()   返回参数类型

 

length(string a)

 

show partitions 表名

 

 

 

btrim(string a), btrim(string a, string chars_to_trim)去空格

 

space(int n)=repeat(' ',n)

 

repeat(string str, int n)  复制字符串几次

 

 

 

lower(string a), lcase(string a)

 

initcap('hello world')   Hello World   单词首字母变大

 

 

 

regexp_replace('aaabbbaaa', 'b+', 'xyz')    aaaxyzaaa

 

 

 

 

 

replace(string initial, string target, string replacement)

 

translate(string input, string from, string to)

Purpose: Returns the input string with a set of characters replaced by another set of characters.

Return type: string

 

 

 

LPAD('ABCDE',10,'X')    XXXXXABCDE 从左边进行填充 rpad 右填充

 

reverse()    反转排列

 

 

replace(string initial, string target, string replacement)

 

 

 

 

日期处理:

 

now() =current_timestamp()

 

add_months(now(), 2)   月份+2

 

adddate(now(), 2)  天数+2

 

date_add(now(), 2) 同上

 

date_add(cast('2016-01-31' as timestamp), interval 3 months)

 

date_part('year'/'month'/'hour',now())   去日期的年月日等

 

date_sub(now(), 2)   天数-2

 

datediff(timestamp enddate, timestamp startdate) 日期相减

 

day('2016-02-29')   29

 

day('2016-02-028')   null

 

dayofmonth(timestamp date) dayofweek(timestamp date) dayofyear(timestamp date)

 

dayname(now())   周几

 

to_date()

 

trunc(timestamp, string unit)  返回季度 月份 周 天 初始时刻

 

 

 

条件函数:

 

CASE a WHEN b THEN c [WHEN d THEN e]... [ELSE f] END

 

coalesce(type v1, type v2, ...)  返回第一个不是null的参数,常用默认值来取代null值

 

decode(type expression, type search1, type result1 [, type search2, type result2 ...] [, type default] )

 

if(boolean condition, type ifTrue, type ifFalseOrNull)

 

ifnull(type a, type ifNull)  

 

isfalse(boolean)  isnottrue(boolean)

 

isnotfalse(boolean)  istrue(boolean)

 

isnull(type a, type ifNull)

 

nullif(expr1,expr2)

 

nvl(type a, type ifNull)

 

nvl2(type a, type ifNull, type ifNotNull)

 

 

e.g.:

replace(string initial, string target, string replacement)

,replace(ZZSPMD, '\n', ';') as ZZSPMD,

 

 

文档整理from:https://www.cloudera.com/documentation/enterprise/latest/topics/impala_string_functions.html#string_functions

https://www.cloudera.com/documentation/enterprise/latest/topics/impala_functions.html

 

 

 

分享到:
评论

相关推荐

    impala中substr()截取中文字符串乱码的问题

    然而,当涉及到处理中文字符时,Impala的内置函数`substr()`和`substring()`可能会遇到一些挑战,尤其是在截取中文字符串时可能出现乱码问题。这是因为这两个函数在设计时可能没有充分考虑多字节字符集,如UTF-8,而...

    各种情况手机号清洗udf函数(hive impala)

    - 步骤1:加载数据,使用Hive或Impala的内置函数初步筛选出可能的手机号码。 - 步骤2:调用自定义UDF,使用正则表达式进行格式规范化。 - 步骤3:检查清洗后的手机号码,确保其符合预期的格式。 - 步骤4:如果...

    Apache Impala Guide impala-3.3.pdf

    升级Impala时,要特别关注升级的注意事项,如授权、保留字的变化、数据类型、查询选项的弃用、内置函数的返回类型变化等。 启动Impala通常从命令行开始,并可对启动选项进行修改和配置。例如,通过命令行配置...

    drill-parquet-timestamp:UDF 将 Impala Int96 时间戳转换为 Drill 时间戳

    5. **测试和使用**:在 Drill SQL 查询中,可以像使用内置函数一样调用这个 UDF,将 Int96 类型的字段作为输入,返回 Drill 可以理解的时间戳。 在实际项目中,这个过程可能会涉及到更多的细节,如错误处理、性能...

    Hive权威指南

    4. **数据类型和函数**:介绍Hive支持的各种数据类型,以及丰富的内置函数,如统计函数、日期函数、字符串处理函数等。 5. **数据加载与导出**:讲解如何将数据导入Hive表,以及将查询结果导出到其他系统或文件格式...

    SQL chm中文帮助手册

    8. 存储过程和函数:存储过程的定义、创建、调用和优点,以及内置函数和自定义函数的使用。 9. 权限与安全性:用户权限管理,如何GRANT和REVOKE权限,以及角色的概念。 10. 触发器:触发器的定义和用途,如何创建...

    开源的SQL on Hadoop工具比较

    Hive支持将元数据存储在关系型数据库中,提供了索引功能来加速查询,并内置了大量用户定义函数(UDF)来支持各类数据操作。然而,由于Hive使用的是MapReduce作为底层执行引擎,它的查询效率并不高,尤其是对实时交互...

    hive-1.1.0-cdh5.5.0-src.tar.gz

    4. UDF(用户定义函数)和UDAF(用户定义聚合函数)的增强:增加了更多的内置函数,提升了用户的灵活性。 三、CDH5.5.0中的Hive CDH5.5.0包含了Hive 1.1.0,提供了一个完整的Hadoop生态系统,包括HDFS、YARN、HBase...

    Hive基本语法使用

    - 内置函数:如COUNT(), SUM(), AVG(), MAX(), MIN()等统计函数,以及CONCAT(), SUBSTR(), lower()等字符串处理函数。 - 分桶函数:如RAND(), FLOOR(), CEIL()等。 - 分区函数:例如DATE_FORMAT()用于日期处理,...

    CarbonData_meetup_shenzhen_20181201_v1.1.2

    在技术选择方面,他们面临了使用Impala+Parquet方案带来的问题,比如入库速度慢,节点实测速度达到每秒60M/S即达到上限,使用两个动态分区时,入库过程数据shuffle加剧导致磁盘I/O性能下降,查询时如果用不上分区...

    精品课程推荐 大数据与云计算教程课件 优质大数据课程 16.Hive操作(共43页).pptx

    Hive还提供了丰富的内置函数,涵盖了数学、统计、字符串、日期、条件判断、聚集等多种类型,极大地扩展了数据处理的能力。 Hive中的类型转换规则是关键概念之一,原子数据类型之间的隐式转换允许灵活的数据操作,但...

    hive-1.1.0-cdh5.7.0.tar.gz免费下载

    6. UDF(User Defined Functions)和UDAF(User Defined Aggregate Functions):Hive提供丰富的内置函数,同时用户可以自定义函数,扩展其功能。 7. Hive-on-MR和Hive-on-Spark:Hive 1.1.0支持在MapReduce和Spark...

    2018BAT最新面试题(合集)

    2. PHP函数:自定义函数、内置函数、数组处理、字符串操作和文件系统操作。 3. OOP(面向对象编程):类与对象、继承、封装、多态、抽象类和接口。 4. 错误和异常处理:了解错误级别、异常处理机制及如何自定义异常...

    一篇讲明白Doris数仓特点.doc

    - **丰富的函数库**:提供了大量内置函数,方便进行复杂的数据分析和处理。 #### 总结 Doris凭借其独特的极简架构设计和出色的易用性,在大数据分析领域占据了重要的位置。它不仅能够在处理大规模数据时保持高性能...

    SQL 比较一个集合是否在另一个集合里存在的方法分享

    总的来说,比较集合的存在性是一个常见的数据库查询需求,可以使用多种方法实现,包括自定义函数、JOIN操作以及SQL内置的集合操作符。选择哪种方法取决于数据量、性能需求以及数据库版本。在实际应用中,应该根据...

    hive

    同时,Hive 还支持自定义函数(UDF),用户可以编写自己的函数来扩展其功能。 4. **容错性**:Hive 构建在 Hadoop 之上,继承了 Hadoop 的高容错性。即使部分数据丢失或节点故障,Hive 也能通过重新执行任务来恢复...

    pig-0.12.0-cdh5.5.0.tar.gz

    5. **用户定义函数(UDF)**:Pig 支持用户编写自己的 Java 或 Scala 函数,以扩展其内置的功能。这些 UDF 可以用于处理特定的数据类型、执行复杂的计算或集成自定义的算法。 6. **调试和日志**:Pig 提供了详细的...

    6-4+FAE:快速用户行为分析引擎.pdf

    与市面上其他系统如Google Mesa + Shasta、百度Palo、Presto/Impala、Clickhouse、Greenplum、Druid和Kylin相比,FAE在数据量、响应速度和灵活性方面都有独特优势,尤其在处理大规模数据和实时分析方面表现突出。...

    aqua.css:一个优雅CSS框架

    Sass(Syntactically Awesome Style Sheets)是CSS的一个扩展,引入了变量、嵌套规则、混合、函数等功能,提高了CSS的可维护性和可读性。SCSS是Sass的一种语法格式,它完全兼容CSS,使代码更接近标准CSS,易于理解和...

Global site tag (gtag.js) - Google Analytics