Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 25/03/2018 11:39:51
- mozardyao
- Membre
Requete pivot
Bonjour,
J'aimerais savoir comment construire une requete pivot.
Hors ligne
#2 26/03/2018 08:07:50
- ced
- Membre
Re : Requete pivot
Bonjour,
Vous pouvez passer par l'extension tablefunc : https://www.postgresql.org/docs/current … efunc.html
Ou bien en utilisant la fonction décrite sur le wiki de PostgreSQL : https://wiki.postgresql.org/wiki/Pivot_query (jamais testé pour ma part).
Hors ligne
#3 26/03/2018 15:21:18
- dverite
- Membre
Re : Requete pivot
Il faut savoir si le besoin est un pivot avec colonnes statiques ou dynamiques.
Si la liste des colonnes est statique, la fonction crosstab() de tablefunc peut faire l'affaire.
Si la liste des colonnes est dynamique (peut changer d'une exécution à l'autre) il faut générer dynamiquement la requête qui va afficher les résultats pivotés. Cette requête peut être un crosstab mais quand on en est à la générer, on peut aussi bien produire une requête indépendante:
SELECT
autres colonnes,...
(CASE WHEN colonne='la valeur1' THEN expression END) AS "la valeur1",
... etc pour toutes les valeurs possibles de la colonnes
ce résultat étant la structure de base d'un pivot.
@DanielVerite
http://blog-postgresql.verite.pro/
Hors ligne
Pages : 1