使用PostgreSQL上的SQL连接数组中的多行
发布时间:2020-12-13 16:42:53 所属栏目:百科 来源:网络整理
导读:我有一个这样的表: oid | identifier | value1 | 10 | 1012 | 10 | 1023 | 20 | 2014 | 20 | 2025 | 20 | 203 我想查询这个表来得到如下结果: identifier | values[]10 | {101,102}20 | {201,202,203} 我无法想像这样做。那可能吗 ?怎么样 ? 非常感谢你
我有一个这样的表:
oid | identifier | value 1 | 10 | 101 2 | 10 | 102 3 | 20 | 201 4 | 20 | 202 5 | 20 | 203 我想查询这个表来得到如下结果: identifier | values[] 10 | {101,102} 20 | {201,202,203} 我无法想像这样做。那可能吗 ?怎么样 ? 非常感谢你。
您必须创建一个聚合函数,例如
CREATE AGGREGATE array_accum (anyelement) ( sfunc = array_append,stype = anyarray,initcond = '{}' ); 然后 SELECT identifier,array_accum(value) AS values FROM table GROUP BY identifier; HTH (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |