Maison > base de données > tutoriel mysql > Comment puis-je annuler le pivotement des données tout en conservant les noms de colonnes d'origine dans SQL ?

Comment puis-je annuler le pivotement des données tout en conservant les noms de colonnes d'origine dans SQL ?

Patricia Arquette
Libérer: 2025-01-21 04:51:08
original
666 Les gens l'ont consulté

How Can I Unpivot Data While Keeping Original Column Names in SQL?

Conserver les noms de colonnes d'origine pour la déconvolution des données

La déconvolution des données (Unpivoting) est un processus de conversion de données tabulaires dans un autre format, où chaque colonne devient une ligne et ses noms de colonnes deviennent des attributs de la ligne. Bien que cela soit généralement utilisé pour remodeler les données à des fins d'analyse ou de visualisation, dans certains cas, il peut être utile de conserver les noms de colonnes d'origine.

Question :

Étant donné un tableau de données avec des noms de colonnes tels que Name, Maths, Science et English, comment déconvolutionner les données pour obtenir l'ensemble de résultats suivant ?

Name Subject Marks
Tilak Maths 90
Tilak Science 40
Tilak English 60

Solution :

Grâce à la clause UNPIVOT de SQL, on peut déconvoluer les données tout en préservant les noms de colonnes :

select u.name, u.subject, u.marks
from student s
unpivot
(
  marks
  for subject in (Maths, Science, English)
) u;
Copier après la connexion
La clause

UNPIVOT convertit les colonnes Maths, Science et English en lignes, et les scores deviennent la colonne « notes » dans l'ensemble de résultats déconvolué. Dans le même temps, le nom de la colonne reste dans la colonne « sujet ».

Exemple :

Considérez l'ensemble de données suivant :

Name Maths Science English
Tilak 90 40 60
Raj 30 20 10

L'application de la requête fournie à cet ensemble de données produira les résultats souhaités :

Name Subject Marks
Tilak Maths 90
Tilak Science 40
Tilak English 60
Raj Maths 30
Raj Science 20
Raj English 10

Cette technique est utile lorsqu'il est important de conserver les noms de colonnes d'origine pour une analyse plus approfondie ou un traitement des 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!

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