2016-01-29 4 views
-2

Figure:champ postgresql concaténer avec delimiter

enter image description here

Je suis désolé d'avoir créé Google Traduction Cela permet de combiner le caractère? It "," il est séparé sur la colonne Lors de la fusion de la col1 et col2 "|" Pour être séparés

+0

Avez-vous une colonne d'identité ?? –

+0

Oui, j'ai. Numéro de colonne commençant à 1, nom de la colonne: col0 –

+0

Vous devriez au moins essayer ma réponse –

Répondre

0

Avec les données suivantes

|  col1 |  col2 | 
|----------|----------| 
| aa,bb,cc | 11,22,33 | 
| dd,ee,ff | 44,55,66 | 

Vous pouvez utiliser comme PostgreSQL de string functions ci-dessous

SELECT string_agg(col1 || '|' || col2, ',') col 
FROM (
    SELECT unnest(regexp_split_to_array(col1, ',')) col1 
      ,unnest(regexp_split_to_array(col2, ',')) col2 
      ,row_number() OVER() rn 
    FROM table_name 
    ) t 
GROUP BY rn 

pour obtenir la sortie désirée

|    col | 
|-------------------| 
| aa|11,bb|22,cc|33 | 
| dd|44,ee|55,ff|66 | 

SqlFiddle