Hive中的trim函数用于删除字符串两端的指定字符
TRIM(string str, string char_to_remove)
参数说明:
str:需要处理的字符串char_to_remove:需要从字符串两端删除的字符,可以是单个字符或者字符串。示例:
假设我们有一个名为employees的表,其中有一个名为name的列,包含以下数据:
| id | name |
|---|---|
| 1 | John Doe |
| 2 | Jane Smith |
| 3 | Alice |
现在,我们想要删除name列中每个名字两端的空格。可以使用以下查询:
SELECT TRIM(name) AS trimmed_name
FROM employees;
结果将如下所示:
| id | trimmed_name |
|---|---|
| 1 | John Doe |
| 2 | Jane Smith |
| 3 | Alice |
如果我们只想删除左边的空格,可以使用LTRIM()函数:
SELECT LTRIM(name) AS trimmed_name
FROM employees;
结果将如下所示:
| id | trimmed_name |
|---|---|
| 1 | John Doe |
| 2 | Jane Smith |
| 3 | Alice |
如果我们只想删除右边的空格,可以使用RTRIM()函数:
SELECT RTRIM(name) AS trimmed_name
FROM employees;
结果将如下所示:
| id | trimmed_name |
|---|---|
| 1 | John Doe |
| 2 | Jane Smith |
| 3 | Alice |
如果需要删除两端的特定字符,例如“-”,可以使用以下查询:
SELECT TRIM(name, '-') AS trimmed_name
FROM employees;
结果将如下所示:
| id | trimmed_name |
|---|---|
| 1 | John Doe |
| 2 | Jane Smith |
| 3 | Alice |