Bonjour tout le monde !
Je bosse actuellement sur un site de produits bio pour lequel je dois développer une page affichant tous les produits classés par catégorie. Jusqu'à présent, j'utilisais pour ce genre de demande une requete avec 2 GROUP CONCAT et je récupérais mes catégories avec un explode PHP puis les produits avec un second explode.
Mais lors d'un projet récent, j'ai été confronté au probleme de la taille maximale d'un champ group concat (group_concat_max_len). Je me demande comment faire les choses proprement pour mes produits bio. Voilà la structure de la table produits:
PRODUITS:
ididcategorienomprovenancetexteurl
Et voila la requete avec les 2 CONCAT que j'aurais utilisé d'habitude:
Est ce que ce type de requete est une aberration complète? Si oui, quelle est la bonne solution à choisir?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SELECT id_categorie, GROUP_CONCAT( CONCAT( id, '=>', id_categorie, '=>', nom, '=>', provenance ) SEPARATOR '|' ) AS monChamp FROM produits GROUP BY id_categorie
Si c'est comme ca qu'il faut s'y prendre, comment augmenter la taille du champ group_concat? J'ai lu qu'il fallait utiliser cette commande mais je ne comprends pas où et comment la mettre:
J'avoue que je suis très loin d'etre un connaisseur sur MySQl et que vos avis m'aideraient bien
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SET [SESSION | GLOBAL] group_concat_max_len = nbre de caractères;![]()
Partager