GROUP_CONCAT 逗号分隔符 - MySQL

问题描述 投票:0回答:3

我有一个查询,其中使用

GROUP_CONCAT
和自定义分隔符,因为我的结果可能包含逗号:'----'

这一切都很好,但它仍然是逗号分隔的,所以我的输出是:

Result A----,Result B----,Result C----

我怎样才能做到输出是:

Result A----Result B----Result C----

我以为这是自定义分隔符的想法!

如果做不到这一点,你能否在结果中转义逗号,这样我就可以在 PHP 中用

GROUP_CONCAT
逗号进行爆炸?

mysql group-concat separator
3个回答
457
投票

看起来您在 GROUP_CONCAT 函数中缺少 SEPARATOR 关键字。

GROUP_CONCAT(artists.artistname SEPARATOR '----')

按照您编写的方式,您使用默认的逗号分隔符将

artists.artistname
'----'
字符串连接起来。


47
投票

查询达到您的要求

SELECT id,GROUP_CONCAT(text SEPARATOR ' ') AS text FROM table_name group by id;

0
投票

或者,如果您正在进行拆分 - 合并:

GROUP_CONCAT(split(thing, " "), '----') AS thing_name,

您可能需要包括

WITHIN RECORD
,如下所示:

GROUP_CONCAT(split(thing, " "), '----') WITHIN RECORD AS thing_name,

来自 BigQuery API 页面

© www.soinside.com 2019 - 2024. All rights reserved.