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
相关推荐
pjx98726 分钟前
服务间的“握手”:OpenFeign声明式调用与客户端负载均衡
java·运维·spring·负载均衡
prinrf('千寻)1 小时前
MyBatis-Plus 的 updateById 方法不更新 null 值属性的问题
java·开发语言·mybatis
老华带你飞1 小时前
实习记录小程序|基于SSM+Vue的实习记录小程序设计与实现(源码+数据库+文档)
java·数据库·spring boot·小程序·论文·毕设·实习记录小程序
在未来等你2 小时前
互联网大厂Java求职面试:AI与大模型应用集成及云原生挑战
java·微服务·ai·kubernetes·大模型·embedding·spring ai
源码技术栈2 小时前
SaaS基于云计算、大数据的Java云HIS平台信息化系统源码
java·大数据·云计算·云his·his系统·云医院·区域his
编程、小哥哥2 小时前
互联网大厂Java面试:从Spring Boot到微服务架构的技术深挖
java·spring boot·redis·微服务·prometheus·面试技巧
Elastic 中国社区官方博客2 小时前
Elasticsearch 索引副本数
大数据·数据库·elasticsearch·搜索引擎·全文检索
揽你·入怀2 小时前
数据结构:ArrayList简单实现与常见操作实例详解
java·开发语言
Eternity......2 小时前
SparkSQL基本操作
大数据·spark
okok__TXF2 小时前
SpringBoot3+AI
java·人工智能·spring