gpt4 book ai didi

mysql - IN mysql 函数 group_concat 动态更改分隔符

转载 作者:行者123 更新时间:2023-11-28 23:21:02 25 4
gpt4 key购买 nike

我想在 mysql 中为 group_concat() 函数使用分隔符。但我想动态更改分隔符。我的意思是分隔符值来自表,并且每一行都不同。

我找不到任何解决方案,请帮助我。

最佳答案

终于找到解决办法了。

假设我们有一些 MySQL 例程。我们需要 GROUP_CONCAT 一些带有特殊 SEPARATOR 的值(默认为 ',')。但是 SEPARATOR 不是静态的,它来自另一个表,例如。来自一些“设置”表。

DECLARE url_delimiter VARCHAR(255);

SELECT catalog_url_delimiter
INTO url_delimiter
FROM settings;

我们不能直接使用变量作为SEPARATOR参数:

-- doesn't work
SELECT GROUP_CONCAT(`some_table`.id SEPARATOR url_delimiter)
FROM <some query>

但是我们可以使用一些虚拟分隔符并将其替换为有效的,如下所示:

SELECT 
REPLACE(
GROUP_CONCAT(`some_table`.id SEPARATOR 'some-tricky-dummy-separator'),
'some-tricky-dummy-separator',
url_delimiter
)
FROM <some query>

关于mysql - IN mysql 函数 group_concat 动态更改分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41563093/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com