Chercher dans la communauté
Affichage du résultat pour les tags 'regroupement'.
1 résultat trouvé
-
Salut à tous, j'essaye d'optimiser un script php afin de n'avoir à réaliser qu'une seule requête et récupérer toutes les informations nécessaires. J'ai découvert il y a peu group_concat mais je ne suis parvenu à le faire fonctionner que sur un seul champ. Soit les deux tables sources suivantes : Heroes +----+-----------+------------+ | id| name_fr | name_us | +----+-----------+------------+ | 1 | ababab | ababab | | 3 | efefef | efefef | +----+-----------+------------+ Schools +----+-----------+-----------+ | id | name_fr | name_us | +----+-----------+-----------+ | 3 | ababab | ababab | | 5 | cdcdcd | cdcdcd | | 9 | efefef | efefef | +----+-----------+-----------+ Soit la table relationnelle suivante : Heroes_Schools +----+----+ | hid|sid | +----+----+ | 1 | 3 | | 1 | 5 | | 3 | 9 | +----+----+ L'idée, est de faire en sorte de récupérer un résultat similaire à celui-ci +----+-----------+-----------+--------------------------------------------------+ | id| name_fr | name_us | schools | +----+-----------+-----------+--------------------------------------------------+ | 1 | ababab | ababab | 3, ababab, ababab; 5, cdcdcd, cdcdcd | | 3 | efefef | efefef | 9, efefef, efefef | +----+-----------+-----------+--------------------------------------------------+ Afin de pouvoir par la suite faire un traitement de tableau en php et passer le contenu de schools en paramètre d'une autre class que celle réalisant la requête et stockant les information id, name_fr et name_us Pour l'instant j'ai ça : SELECT mch.id, mch.name_fr, mch.name_us, GROUP_CONCAT(mcs.id) AS schools_id, GROUP_CONCAT(mcs.name_fr) AS schools_name_fr, GROUP_CONCAT(mcs.name_us) AS schools_name_us FROM mom_cards_heroes AS mch LEFT JOIN mom_cards_heroes_schools AS mchs ON mch.id = mchs.heroesid LEFT JOIN mom_cards_schools AS mcs ON mchs.schoolid = mcs.id WHERE mch.`publish` = 1 GROUP BY mch.id ORDER BY mch.factionid, mch.name_fr ASC Mais pas suffisant x)
-
- sql
- regroupement
-
(et 1 de plus)
Étiqueté avec :