Hive常用函数_20个字符串处理

Hive常用函数_20个字符串处理

以下是Hive中常用的字符串处理函数,可用于执行各种字符串处理转换操作。

1. CONCAT():将多个字符串连接在一起。
c 复制代码
SELECT CONCAT('Hello', 'World');
-- Output: HelloWorld
2. SUBSTR():从字符串中提取子字符串,从指定位置开始,指定长度。
c 复制代码
SELECT SUBSTR('HelloWorld', 6, 5);
-- Output: World
3. UPPER():将字符串转换为大写。
c 复制代码
SELECT UPPER('hello');
-- Output: HELLO
4. LOWER():将字符串转换为小写。
c 复制代码
SELECT LOWER('WORLD');
-- Output: world
5. TRIM():去除字符串两侧的空格。LTRIM(去除左侧)、RTRIM(去除右侧)
c 复制代码
SELECT TRIM('  Hello  ');
-- Output: Hello
6. LENGTH():返回字符串的长度。
c 复制代码
SELECT LENGTH('Hive');
-- Output: 4
7. REPLACE():替换字符串中的旧子字符串为新子字符串。
c 复制代码
SELECT REPLACE('Hello, World', 'Hello', 'Hi');
-- Output: Hi, World
8. SPLIT():根据指定分隔符将字符串拆分为数组。
c 复制代码
SELECT SPLIT('apple,orange,banana', ',');
-- Output: ['apple', 'orange', 'banana']
9. INSTR():返回子字符串在字符串中第一次出现的位置。
c 复制代码
SELECT INSTR('Hello, World', 'World');
-- Output: 7
10. REGEXP_EXTRACT():使用正则表达式从字符串中提取匹配的子字符串。
c 复制代码
SELECT REGEXP_EXTRACT('The price is $10.99', '\\$(\\d+\\.\\d+)', 1);
-- Output: 10.99

11. REGEXP_REPLACE():使用正则表达式替换字符串。
c 复制代码
SELECT REGEXP_REPLACE('apple orange', 'a', 'A');
-- Output: Apple orange
12. REVERSE():反转字符串。
c 复制代码
SELECT REVERSE('Hello');
-- Output: olleH
13. LPAD():在字符串左侧填充指定字符,使字符串达到指定长度。
c 复制代码
SELECT LPAD('Flink', 10, '*');
-- Output: ``*Flink
14. RPAD():在字符串右侧填充指定字符,使字符串达到指定长度。
c 复制代码
SELECT RPAD('Hive', 8, '-');
-- Output: Hive----
15. LOCATE():返回子字符串在字符串中第一次出现的位置。
c 复制代码
SELECT LOCATE('ra', 'orange');
-- Output: 2
16. CONCAT_WS():将多个字符串使用指定分隔符连接在一起。
c 复制代码
SELECT CONCAT_WS('-', '2022', '01', '01');
-- Output: 2022-01-01
17. INITCAP():将字符串中每个单词的首字母大写。
c 复制代码
SELECT INITCAP('hello world');
-- Output: Hello World
18. SUBSTRING():从字符串中提取子字符串,从指定位置开始,指定长度。
c 复制代码
SELECT SUBSTRING('abcdef', 2, 3);
-- Output: bcd
19. ASCII():返回字符串第一个字符的ASCII码值。
c 复制代码
SELECT ASCII('A');
-- Output: 65
20. REPEAT():重复字符串指定次数。
c 复制代码
SELECT REPEAT('Hi', 3);
-- Output: HiHiHi
相关推荐
shehuiyuelaiyuehao16 分钟前
算法29,前缀和,除自身以外的数组的乘积
java·数据结构·算法
财迅通Ai25 分钟前
光智科技全景透视:一家被“光学元件”标签遮蔽的稀散金属材料平台
大数据·人工智能·科技·光智科技
小刘在重生~32 分钟前
Java常用类|String类详解 + BigDecimal精准计算(含面试题)
java·开发语言·python
随遇而安zx34 分钟前
【多线程】---JMM 与 volatile 深度解析
java·多线程
邪修king1 小时前
Re:Linux系统篇(十九):进程篇(八): 进程等待详解:wait/waitpid,僵尸进程到底该如何回收
java·开发语言
啵啵啵鱼1 小时前
DS-顺序表
java·数据结构·笔记·后端·链表·obsidian
TinyMemory1 小时前
Java 面向对象核心入门(七):方法重载 Overload,同一个方法名能干不一样的活
java·面向对象·overload·方法重载
吴声子夜歌2 小时前
Java扩展——OkHttp
java·开发语言·okhttp
卓怡学长2 小时前
w210基于springboot反诈平台设计与实现
java·spring boot·spring·intellij-idea