{MySQL} concatener les résultats d'un même champ

Résolu
lily-222 Messages postés 1 Statut Membre -  
 djitar -
Bonjour,
Débutante en PHP/Mysql, j’ai du réaliser une base de données qui simule un catalogue de bibliothèque. J’ai un problème pour l’affichage des résultats.

Pour simplifier, une table (document) contient les informations principales concernant le livre, une autre contient les différents type de sujets possibles (sujet), et une troisième permet de faire le lien entre les deux (sujet-document).

Je pensais faire une requête du type: SELECT document.titre_document, sujet.nom_sujet FROM document, sujet, sujet_document WHERE document.id_document=document.id_document AND sujet.id_sujet=sujet_document.id_sujet AND document.titre_document LIKE ‘%edition%’ ;

Le problème est que, si un livre est relié à cinq sujets différents, j’obtiens 5 lignes de résultats même si la base ne contient qu’un seul livre dont le titre comporte le nom « edition ».

Ma question est donc : comment réussir à concaténer en une seule ligne l’ensemble des résultats d’un même champ ?

Merci d’avance !
Configuration: Windows 7
Firefox 3.5.7

3 réponses

  1. djitar
     
    Salut

    C'est tout à fait possible !
    Exemple :

    select GROUP_CONCAT (CT_CHAMP SEPARATOR ', ') from Table;
    2
  2. djitar
     
    Salut,

    C'est tout à fait possible :
    SELECT GROUP_CONCAT(CONCAT( CT_NOM,' ', CT_PRENOM)
    ORDER BY CT_NOM DESC SEPARATOR "," )
    FROM Bank_client
    ;
    Ca marche pour moi. A toi d'adapter ma requête selon ton besoin !
    A+
    0