gpt4 book ai didi

sql - PostgreSQL - 元素数量有限的 string_agg

转载 作者:行者123 更新时间:2023-11-29 11:18:23 26 4
gpt4 key购买 nike

下面的string_agg函数是否可以限制元素个数?

 string_agg(distinct(tag),', ')

最佳答案

还有两种方式。

1) 从行创建一个数组,限制它,然后连接成字符串:

SELECT array_to_string((array_agg(DISTINCT tag))[1:3], ', ') FROM tbl

("array[1:3]"意思是:从数组中取1到3的项)

2) 无限制地将行连接成字符串,然后使用“substring”对其进行修剪:

string_agg(distinct(tag),',')

如果您知道“标记”字段不能包含 , 字符,那么您可以选择第 n 次出现的 , 之前的所有文本

SELECT substring(
string_agg(DISTINCT tag, ',')
from '(?:[^,]+,){1,3}')
FROM tbl

此子字符串将选择 3 个或更少的字符串除以 ,

关于sql - PostgreSQL - 元素数量有限的 string_agg,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27405150/

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