把一个查询结果,三列,多条记录,拼接成一条记录

muczhoubin 2013-05-09 11:19:06
在晚上找了很久,在其他数据库中这个功能很好实现,但是在GREENPLUM数据库中一直找不到合适的方法,希望高手指教~~~要求如题~~
要,最好不要使用临时表~~~感谢
...全文
1008 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
懒得去死 2013-12-31
  • 打赏
  • 举报
回复
度娘搜索“POSTGRESQL GROUP_CONCAT”实现方法。
jjxliu306 2013-05-15
  • 打赏
  • 举报
回复
上面运行后的结果是 : NOTICE: text :11-22 利率: 11;22-33 利率: 22;33-44 利率: 33;
jjxliu306 2013-05-15
  • 打赏
  • 举报
回复
可以先转 array 再转 string 给你看个DEMO do $$ declare recs record; begin drop table if exists test; create temporary table test( col1 varchar, col2 varchar, value integer ); insert into test values('11' , '22' , 11); insert into test values('22' , '33' , 22); insert into test values('33' , '44' , 33); -- sql : select array_to_string(array_agg(col1 || '-' || col2 || ' - ' || value)) from test for recs in select array_to_string(array_agg(col1 || '-' || col2 || ' 利率: ' || value) , ';') || ';' as t from test loop raise notice ' text :%' , recs.t; end loop; end; $$
muczhoubin 2013-05-10
  • 打赏
  • 举报
回复
引用 1 楼 WWWWA 的回复:
举例说明要求,数据库是POSTGRESQL?
不是,是GreenPlum数据库 一个基于PostGresQL的数据库 要求就是 col1 col2 col3 201204 201305 3.2 201306 201308 3.9 201309 201311 305 想到得到的结果是:201204——201305 利率3.2;201306——201308 利率3.9;201309——201311利率3.5; GreenPlum数据空中没有直接的行转列函数,调用函数式不能作为一个select的子查询: 所以是相当难啊,现在我用游标解决,但是速度很慢
muczhoubin 2013-05-10
  • 打赏
  • 举报
回复
引用 1 楼 WWWWA 的回复:
举例说明要求,数据库是POSTGRESQL?
您这太简单了 答非所问啊 你这是拼接列,不是拼接行记录啊
muczhoubin 2013-05-10
  • 打赏
  • 举报
回复
引用 楼主 muczhoubin 的回复:
在晚上找了很久,在其他数据库中这个功能很好实现,但是在GREENPLUM数据库中一直找不到合适的方法,希望高手指教~~~要求如题~~ 要,最好不要使用临时表~~~感谢
不是,是GreenPlum数据库 一个基于PostGresQL的数据库 要求就是 col1 col2 col3 201204 201305 3.2 201306 201308 3.9 201309 201311 305 想到得到的结果是:201204——201305 利率3.2;201306——201308 利率3.9;201309——201311利率3.5; GreenPlum数据空中没有直接的行转列函数,调用函数式不能作为一个select的子查询: 所以是相当难啊,现在我用游标解决,但是速度很慢
clqaitxp 2013-05-10
  • 打赏
  • 举报
回复
select column_a||'-'||column_b||'*||column_c from table; 或者用concat函数
WWWWA 2013-05-10
  • 打赏
  • 举报
回复
举例说明要求,数据库是POSTGRESQL?

972

社区成员

发帖
与我相关
我的任务
社区描述
PostgreSQL相关内容讨论
sql数据库数据库架构 技术论坛(原bbs)
社区管理员
  • PostgreSQL社区
  • yang_z_1
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧