2017-08-27 48 views
1

一個行內的新的字符串每個值我有這樣一個查詢Postgres的ARRAY_AGG

SELECT group_id, array_agg(element_id) FROM table 
GROUP BY group_id; 

因此,我有這樣的事情:

group_id | array_agg 

    106  | {2147,2138,2144} 
    107  | {2132,2510,2139} 

應該寫什麼查詢,那麼結果可能用這種方式描述:

 group_id | array_agg 

     106  | {2147 
       | 2138 
       | 2144} 
     107  | {2132 
       | 2510 
       | 2139} 

回答

1

基本上應該在客戶端應用程序中格式化輸出,但是您可以使用帶有換行符的:

select group_id, string_agg(element_id::text, e'\n') 
from my_table 
group by group_id; 

group_id | string_agg 
----------+------------ 
     106 | 2147  + 
      | 2138  + 
      | 2144 
     107 | 2132  + 
      | 2510  + 
      | 2139 
(2 rows)