跳转到内容

聚合函数。

STRING_AGG() 函数将列中所有非 NULL 值转换为字符串,并以分隔符分隔。

func.string_agg(<expr> [, delimiter])
func.string_agg(table.language_name).alias('concatenated_languages')
| concatenated_languages |
|-----------------------------------------|
| Python, JavaScript, Java, C#, Ruby |
STRING_AGG(<expr>)
STRING_AGG(<expr> [, delimiter])
参数 说明
<expr> 任意字符串表达式(如果不是字符串,请使用 ::VARCHAR 转换)
delimiter 可选的常量字符串,未指定时使用空字符串

字符串类型

创建表并插入示例数据

CREATE TABLE programming_languages (
id INT,
language_name VARCHAR
);
INSERT INTO programming_languages (id, language_name)
VALUES (1, 'Python'),
(2, 'JavaScript'),
(3, 'Java'),
(4, 'C#'),
(5, 'Ruby');

查询演示:使用分隔符连接编程语言名称

SELECT STRING_AGG(language_name, ', ') AS concatenated_languages
FROM programming_languages;

结果

| concatenated_languages |
|------------------------------------------|
| Python, JavaScript, Java, C#, Ruby |