Maison > base de données > tutoriel mysql > Comment transposer une table dans PostgreSQL : convertir des colonnes en lignes ?

Comment transposer une table dans PostgreSQL : convertir des colonnes en lignes ?

Barbara Streisand
Libérer: 2025-01-03 20:26:41
original
966 Les gens l'ont consulté

How to Transpose a Table in PostgreSQL: Converting Columns to Rows?

Transposition de tableaux : conversion de colonnes en lignes

Lorsque vous travaillez avec des données tabulaires, il peut être utile de transposer un tableau, en convertissant ses colonnes en lignes. Cela peut faciliter la visualisation, l'analyse et l'intégration des données avec d'autres ensembles de données.

Considérez le tableau PostgreSQL suivant, qui contient des informations sur les employés :

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

Pour transposer ce tableau, nous pouvons utiliser ce qui suit étapes :

  1. Désimboîter la colonne Noms :
    À l'aide de la fonction unnest(), nous pouvons extraire les noms de colonnes dans des lignes individuelles :

    unnest(array['Sl.no', 'username', 'Designation','salary']) AS "Columns"
    Copier après la connexion
  2. Dissocier les valeurs des données :
    De même, nous pouvons extraire les valeurs de données de chaque ligne dans des fichiers individuels lignes :

    unnest(array[Sl.no, username, value3Count,salary]) AS "Values"
    Copier après la connexion
  3. Rejoindre les listes extraites :
    Enfin, nous pouvons joindre les noms de colonnes et les valeurs de données extraites pour recréer la table transposée :

    SELECT
       "Columns",
       "Values"
    FROM transposed_table
    ORDER BY "Columns"
    Copier après la connexion

Le résultat de cette requête sera be :

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

Ce tableau transposé organise désormais les informations sur les employés en lignes, avec les noms de colonnes d'origine comme première colonne. Ce format peut être plus pratique pour certaines opérations, telles que la visualisation de données ou la comparaison des attributs des employés dans différentes catégories.

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!

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