Hive concat_ws函数数据拼接使用技巧

作者:技术拾光

时间:2026-06-06

浏览:249

Hive的concat_ws函数用于拼接多个字符串,并在每两个之间插入指定分隔符,其名称“ws”源自“withseparator”。通过建表、插入数据并执行查询,可将名字与姓氏用空格连接成全名,分隔符可根据需求灵活替换为逗号或竖线等。

文章目录

Hive concat_ws 函数简介

Hive 中的 concat_ws 函数,本质上就是用来把多个字符串拼在一起,然后在每两个之间插入你指定的分隔符。这个“ws”其实是“with separator”的缩写——是不是一下子就记住了?

Hive concat_ws函数数据拼接使用技巧

操作步骤:使用 concat_ws 拼接数据

下面通过一组完整的操作步骤,看看它具体怎么用。

创建示例表

先建一张表,包含 id、名字和姓氏三个字段:

CREATE TABLE example_table (
  id INT,
  first_name STRING,
  last_name STRING
);

插入测试数据

放几条数据进去:

INSERT INTO example_table (id, first_name, last_name)
VALUES (1, 'John', 'Doe'),
       (2, 'Jane', 'Smith'),
       (3, 'Alice', 'Johnson');

使用 concat_ws 拼接字段

现在,用 concat_ws 把 first_name 和 last_name 拼成完整的姓名,中间加一个空格作为分隔符:

SELECT id, concat_ws(' ', first_name, last_name) AS full_name
FROM example_table;

查询结果展示

结果一目了然:

+----+---------------+
| id | full_name     |
+----+---------------+
| 1  | John Doe      |
| 2  | Jane Smith    |
| 3  | Alice Johnson |
+----+---------------+

这个例子里用空格做分隔符,实际场景中完全可以根据需求换成逗号、竖线、下划线——只要第一个参数传进去就行。学会这个函数,拼字段的时候再也不用手动加一堆 || 或者嵌套 concat 了。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章