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 :
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>
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>
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!