pg 多列合并一列


 

下面是正常的查询多条数据,如果我要合并成列怎么办。

   

  其实pg有自带的array_to_string函数 ,但是写法稍微有点麻烦,但是可以根据array_to_string函数自定义一个函数去简化写法。

	CREATE AGGREGATE group_concat(anyelement)(
	sfunc = array_append,
	stype = anyarray,
	initcond = '{}'
	); 

  然后使用函数去指定字符串去分割就行了    

  

 

  pg9.x版本可以用函数string_agg实现

select string_agg(bm,'.') as codePath from table

  
  oracle使用listagg函数实现

select listagg(bm,'.') WITHIN GROUP(ORDER BY bm) as cxmlj   
from table
start with bm = '150203740000' 
connect by  prior  ssjgid = zzjgid

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM