Maison > base de données > tutoriel mysql > Comment puis-je transposer les colonnes d'une table PostgreSQL en lignes ?

Comment puis-je transposer les colonnes d'une table PostgreSQL en lignes ?

Patricia Arquette
Libérer: 2025-01-05 15:53:46
original
1028 Les gens l'ont consulté

How Can I Transpose a PostgreSQL Table's Columns into Rows?

Transposition d'une table : colonnes en lignes

Énoncé du problème :

Considérez une table de sortie PostgreSQL avec le format suivant :

Sl.no    username    Designation    salary   etc..
 1        A           XYZ            10000    ...
 2        B           RTS            50000    ...
 3        C           QWE            20000    ...
 4        D           HGD            34343    ...
Copier après la connexion

Le but est de transposer le tableau, en convertissant les colonnes en lignes, ce qui donne le résultat suivant :

Sl.no            1       2        3       4       ...
 Username        A       B        C       D       ...
 Designation     XYZ     RTS      QWE     HGD     ...
 Salary          10000   50000    20000   34343   ...
Copier après la connexion

Solution :

Pour transposer la table et convertir les colonnes en lignes, vous pouvez utiliser le PostgreSQL suivant fonction :

SELECT
   unnest(array['Sl.no', 'username', 'Designation','salary']) AS "Columns",
   unnest(array[Sl.no, username, value3Count,salary]) AS "Values"
FROM view_name
ORDER BY "Columns"
Copier après la connexion

Explication :

  • unnest(array['Sl.no', 'username', 'Désignation','salary'] ) crée une nouvelle ligne pour chaque colonne du tableau d'origine, créant ainsi une colonne noms.
  • unnest(array[Sl.no, username, value3Count,salary]) crée une nouvelle ligne pour chaque valeur de la table d'origine, correspondant aux noms de colonnes.
  • ORDER BY " Colonnes" garantit que les lignes sont classées par noms de colonnes.

Cette requête produira le tableau transposé souhaité, où se trouvent désormais les colonnes. lignes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal