Je ne peux toujours pas comprendre cela, même après des heures de recherche et d'essai. Peut-être que je n'ai pas choisi les bons mots?MySQL - Convertir les lignes en colonnes en fonction de la dernière date et la liste des ID pour chaque colonne
Ok, donc je table avec des événements comme celui-ci:
EVENT
+----+------------+------------+------+
| id | id_article | id_section | date |
+----+------------+------------+------+
| 1 | 1 | 1 | 2011 |
| 2 | 1 | 3 | 2012 |
| 3 | 2 | 7 | 2013 |
| 4 | 2 | 6 | 2014 |
| 5 | 3 | 14 | 2015 |
| 6 | 3 | 13 | 2016 |
| 7 | 3 | 0 | 2017 |
+----+------------+------------+------+
Je voudrais pivoter ce tableau en trois colonnes différentes où chaque colonne contient derniers événements (id_section et Date) dans la liste de id_section. Eh bien, essentiellement comme ceci:
SectionA = id_section IN (1,2,3,4,5) et MAX (date)
SectionB = id_section IN (6,7,8,9 , 10) et MAX (date)
= id_section section C IN (11,12,13,14,15) et MAX (date)
DESIRED RESULT
+------------+----------+----------+-----------+
| id_article | sectionA | sectionB | sectionC | #id_event
+------------+----------+----------+-----------+
| 1 | 3 (2012) | null | null | #id 2
| 2 | null | 6 (2014) | null | #id 4
| 3 | 0 (2017) | null | 13 (2016) | #id 7, 6 <-- two latest events
+------------+----------+----------+-----------+
Voici SqlFiddle de ce que j'ai r ight maintenant - il sélectionne uniquement le dernier événement par id_article:
INSUFFICIENT RESULT
+------------+----------+----------+-----------+
| id_article | sectionA | sectionB | sectionC | #id_event
+------------+----------+----------+-----------+
| 1 | 3 (2012) | null | null | #id 2
| 2 | null | 6 (2014) | null | #id 4
| 3 | 0 (2017) | null | null | #id 7 <-- only latest event
+------------+----------+----------+-----------+
J'ai essayé d'utiliser plus REJOINT mais je ne peux toujours pas comprendre.
Merci pour toute aide! En fonction de votre requête actuelle, j'ai fait quelques changements sur la sous-requête pour identifier le maximum s'il y a plusieurs sections sur chaque id_article
Et s'il y a des liens? –
@GordonLinoff alors peut-être choisir cela avec id plus élevé (événement) –