Maison >base de données >tutoriel mysql >Comment faire pivoter plusieurs colonnes (ventes, stock, cible) simultanément dans SQL Server ?
Comment faire pivoter plusieurs colonnes dans SQL Server
Problème :
Supposons que vous ayez un tableau avec des colonnes représentant les catégories d'articles (par exemple, Panel, AC, Ref) et des données telles que les ventes, le stock et l'objectif. Vous souhaitez transformer ces données dans un format croisé où les catégories deviennent des lignes et les colonnes contiennent les données respectives pour chaque catégorie (ventes, stock, cible).
Solution :
Pour y parvenir, vous pouvez utiliser plusieurs instructions pivot dans SQL Serveur :
SELECT * FROM ( SELECT Branch, Category, Category+'1' As Category1, Category+'2' As Category2, Sales, Stock, Target FROM TblPivot ) AS P -- For Sales PIVOT ( SUM(Sales) FOR Category IN ([Panel], [AC], [Ref]) ) AS pv1 -- For Stock PIVOT ( SUM(Stock) FOR Category1 IN ([Panel1], [AC1], [Ref1]) ) AS pv2 -- For Target PIVOT ( SUM(Target) FOR Category2 IN ([Panel2], [AC2], [Ref2]) ) AS pv3 GO
Explication :
Une fois le pivotement terminé, vous pouvez agréger les résultats ou effectuer d'autres manipulations de données si nécessaire.
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!