Maison  >  Article  >  base de données  >  Comment convertir plusieurs lignes en plusieurs colonnes dans MySQL

Comment convertir plusieurs lignes en plusieurs colonnes dans MySQL

anonymity
anonymityoriginal
2019-05-24 10:06:029507parcourir

Méthode MySQL pour convertir plusieurs lignes en plusieurs colonnes : interrogez d'abord les données dans la table d'origine ; puis fusionnez les plusieurs lignes de données dans la même colonne ou dans des colonnes différentes, telles que [select name, group_concat(sore Separator '; ') comme score du groupe stu par nom].

Comment convertir plusieurs lignes en plusieurs colonnes dans MySQL

Transformation de routes et de colonnes dans MySQL

(Recommandation de didacticiel vidéo : Tutoriel vidéo mysql )

La conversion ligne-colonne MySQL est extrêmement fréquemment utilisée dans les projets, en particulier les rapports dans certains projets financiers. La chose la plus gênante est la conversion de plusieurs lignes en plusieurs colonnes et la conversion dynamique colonne-ligne. Récemment, j'ai étudié ces conversions de lignes et j'ai commencé par la conversion ligne-colonne la plus simple.

Tout d'abord, le tableau original des exemples de données est le suivant :

Comment convertir plusieurs lignes en plusieurs colonnes dans MySQL

[Plusieurs lignes dans une colonne] (les données fusionnées sont dans la même colonne) :

select name ,group_concat(sore Separator ';') as score from stu group by name

Comment convertir plusieurs lignes en plusieurs colonnes dans MySQL

[Plusieurs lignes vers plusieurs colonnes] (les données fusionnées sont sur différentes colonnes) :

SELECT name ,
MAX(CASE type WHEN '数学' THEN score ELSE 0 END ) math,
MAX(CASE type WHEN '英语' THEN score ELSE 0 END ) English ,
MAX(CASE type WHEN '语文' THEN score ELSE 0 END ) Chinese 
FROM stu  
GROUP BY name

Comment convertir plusieurs lignes en plusieurs colonnes dans MySQL

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