将值提取到 postgresql 中的逗号分隔字符串中
fetch values into a comma separated string in postgresql
这应该很简单。像
这样的查询
SELECT code_id FROM code WHERE status = 1
通常会给出类似
的结果
code_id
10
11
12
但我的目标是获取像
这样的字符串
10,11,12
为了在其他查询中使用它
SELECT x FROM table WHERE status in (10,12,13)
在同一查询中更可取。在不添加额外扩展的情况下使用 "standard" Postgresql 是否可行?
到目前为止,一切都在使用未作为标准提供的扩展。
提前致谢。
您可以尝试这种方式来获得逗号分隔的结果
But my goal is to fetch into a string like
SELECT string_agg(code_id, ',') FROM code WHERE status = 1
无论您使用什么工具,都只是为了方便起见向您显示类似的数据。但是你也可以在 subquery 中使用结果集,像这样
SELECT x FROM table WHERE status in (
SELECT code_id FROM code WHERE status = 1
)
这应该很简单。像
这样的查询SELECT code_id FROM code WHERE status = 1
通常会给出类似
的结果code_id
10
11
12
但我的目标是获取像
这样的字符串10,11,12
为了在其他查询中使用它
SELECT x FROM table WHERE status in (10,12,13)
在同一查询中更可取。在不添加额外扩展的情况下使用 "standard" Postgresql 是否可行?
到目前为止,一切都在使用未作为标准提供的扩展。
提前致谢。
您可以尝试这种方式来获得逗号分隔的结果
But my goal is to fetch into a string like
SELECT string_agg(code_id, ',') FROM code WHERE status = 1
无论您使用什么工具,都只是为了方便起见向您显示类似的数据。但是你也可以在 subquery 中使用结果集,像这样
SELECT x FROM table WHERE status in (
SELECT code_id FROM code WHERE status = 1
)