Maison >base de données >tutoriel mysql >Comment faire pivoter des données avec plusieurs colonnes dans une table à largeur variable à l'aide de SQL ?
Dans l'analyse et la gestion des données, le pivotement des données est une technique essentielle pour transformer un tableau en une structure différente. Cela implique de réorganiser les lignes et les colonnes pour rendre les données plus accessibles à l'analyse.
Cette question a un objectif similaire : transformer des données pivotées en un tableau à largeur variable. Les données d'entrée sont représentées dans un format pivot, avec les ID utilisateur, les organisations, les postes et les langues. L'objectif est de restructurer les données de telle sorte que chaque ligne contienne un identifiant d'utilisateur et les valeurs d'organisation et de poste correspondantes pour trois langues différentes : "EN", "FI" et "SV".
La question explore les utilisation d'une requête PIVOT avec une commande connect by comme solution potentielle. Cependant, cette approche n'est pas recommandée pour ce scénario.
Au lieu de cela, une solution plus simple utilisant l'opérateur PIVOT est présentée dans la réponse :
SELECT * FROM source PIVOT ( MIN(org) AS org, MIN(position) AS position FOR lang IN('EN' AS en, 'FI' AS fi, 'SV' AS sv) );
Cette requête PIVOT transforme avec succès les données d'entrée dans le tableau à largeur variable souhaité, chaque ligne contenant l'ID utilisateur, l'organisation et le poste pour les trois langues.
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!