Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Suite à un problème technique intervenu entre le 22 et le 23 mars, nous avons du procéder dans la soirée du 25 mars, à la restauration de la base de données du 24 mars (matinée).

En clair, nous avons perdu vos contributions et inscriptions du dimanche 24 et du lundi 25 mars.
Nous vous prions de nous excuser.

#1 Mon 13 January 2020 11:15

preliator
Participant assidu
Date d'inscription: 17 Nov 2018
Messages: 433

Réordonner les colonnes en SQL

Bonjour à tous,

Sur Postgre, j'aimerais pouvoir réordonner plusieurs colonnes en une seule afin de pouvoir faire des analyses dessus.

Admettons une BDD comme ceci :

Code:

PRENOM TYPE1 TYPE2 TYPE3

JULIE CHIEN CHAT PONEY
FRED MOUTON CHEVAL
OCEANE DOUDOUNE CHAUSSURE

Je souhaiterais le transformer en ceci :

Code:

PRENOM TYPE

JULIE CHIEN
JULIE CHAT
JULIE PONEY
FRED MOUTON
FRED CHEVAL
OCEANE DOUDOUNE
OCEANE CHAUSSURE

Est-il possible de le faire en SQL ? Merci

Hors ligne

 

#2 Mon 13 January 2020 11:48

Ben22
Participant actif
Lieu: 33
Date d'inscription: 11 May 2016
Messages: 95

Re: Réordonner les colonnes en SQL

Bonjour,

Il y a peut-être plus simple mais voici une solution :

Code:

SELECT "PRENOM", unnest(ARRAY["TYPE1", "TYPE2", "TYPE3"]) as TYPE FROM MA_TABLE

Hors ligne

 

#3 Mon 13 January 2020 14:43

preliator
Participant assidu
Date d'inscription: 17 Nov 2018
Messages: 433

Re: Réordonner les colonnes en SQL

Un grand merci smile

Hors ligne

 

#4 Mon 13 January 2020 14:47

preliator
Participant assidu
Date d'inscription: 17 Nov 2018
Messages: 433

Re: Réordonner les colonnes en SQL

Est-il possible d'inverser le processus ?

De passer de

Code:

PRENOM TYPE

JULIE CHIEN
JULIE CHAT
JULIE PONEY
FRED MOUTON
FRED CHEVAL
OCEANE DOUDOUNE
OCEANE CHAUSSURE

à


Code:

PRENOM TYPE1 TYPE2 TYPE3

JULIE CHIEN CHAT PONEY
FRED MOUTON CHEVAL
OCEANE DOUDOUNE CHAUSSURE

Merci

Hors ligne

 

#5 Mon 13 January 2020 15:10

Ben22
Participant actif
Lieu: 33
Date d'inscription: 11 May 2016
Messages: 95

Re: Réordonner les colonnes en SQL

Je le verrais bien comme ça :

Code:

SELECT "PRENOM", type_arr[1], type_arr[2],type_arr[3] FROM (SELECT "PRENOM", array_agg("TYPE") as type_arr FROM MA_TABLE GROUP BY "PRENOM") t1

Hors ligne

 

#6 Mon 13 January 2020 15:38

preliator
Participant assidu
Date d'inscription: 17 Nov 2018
Messages: 433

Re: Réordonner les colonnes en SQL

Cela marche super. Merci beaucoup

Hors ligne

 

Pied de page des forums

Powered by FluxBB