Maison > base de données > tutoriel mysql > Comment créer des tableaux croisés dynamiques dans PostgreSQL pour résumer des données multidimensionnelles ?

Comment créer des tableaux croisés dynamiques dans PostgreSQL pour résumer des données multidimensionnelles ?

Linda Hamilton
Libérer: 2025-01-13 07:38:43
original
986 Les gens l'ont consulté

How to Create Pivot Tables in PostgreSQL to Summarize Multidimensional Data?

Maîtriser les tableaux croisés dynamiques dans PostgreSQL pour l'analyse de données multidimensionnelles

PostgreSQL offre de puissantes fonctionnalités pour résumer et analyser des données multidimensionnelles via des tableaux croisés dynamiques. Cette technique transforme des ensembles de données complexes en formats faciles à digérer, révélant des informations précieuses.

Illustrons avec un tableau "annonces" contenant des colonnes telles que "quartier", "chambres" et "prix". Pour déterminer le prix moyen de chaque nombre de chambres, classé par quartier, suivez ces étapes :

  1. Calcul des prix moyens :

    Utilisez la fonction d'agrégation AVG() pour calculer le prix moyen pour chaque combinaison unique de quartier et de nombre de chambres :

    <code class="language-sql">SELECT neighborhood, bedrooms, AVG(price)
    FROM listings
    GROUP BY 1, 2
    ORDER BY 1, 2;</code>
    Copier après la connexion
  2. Transformer les données avec Crosstab :

    Exploitez la fonction crosstab() (nécessite l'installation de l'extension tablefunc). Cette fonction fait pivoter les données, définissant les quartiers sous forme de lignes et le nombre de chambres sous forme de colonnes :

    <code class="language-sql">SELECT *
    FROM crosstab(
       'SELECT neighborhood, bedrooms, AVG(price)::INT
        FROM listings
        GROUP BY 1, 2
        ORDER BY 1, 2;'
       , $$SELECT UNNEST('{0,1,2,3}'::INT[])$$
    ) AS ct ("neighborhood" TEXT, "0" INT, "1" INT, "2" INT, "3" INT);</code>
    Copier après la connexion

Ces étapes génèrent efficacement des tableaux croisés dynamiques PostgreSQL, facilitant les décisions basées sur les données et une compréhension plus approfondie de vos données.

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