disons que j'ai 2 tables:
table 1:
1 Micheal Rack, Desk 2 Edward Lamp 3 Nord Table
Table 2
1 Micheal Rack 2. Micheal Desk 3 Edward Lamp 4 Nord Table
avec standard jointure, le résultat de la requête peut renvoyer
PurchaseID PurchaseItem. PersonID 1 Rack 1 2 Desk 1 3. Lamp 2 4. Table 3
mais j'ai besoin que le résultat soit affiché comme suit:
PersonID PersonName 1 Micheal 2 Edward 3. Nord 4. Stephanie
3 Réponses :
Vous pouvez essayer quelque chose comme ceci:
Select t1.personid, t1.personname, group_concat(t2.purchase_item) from table1 t1 join table2 t2 on t1.personId = t2.personId group by personID;
Si vous trouvez cette réponse utile, veuillez la marquer comme réponse. Pour le marquer comme réponse, vous pouvez simplement cliquer sur le symbole correct, puis il deviendra vert une fois que vous aurez cliqué dessus. Merci
select t1.personid, t1.personname,
group_concat(t2.PurchaseItem)
from t1
join t2 on t1.personid = t2.personid
group by t1.personid, t1.personname
Vous pouvez regrouper par PersonName et utiliser group_concat pour concaténer les PurchaseItem s:
SELECT t1.PersonId, PersonName, GROUP_CONCAT(PurchaseItem, ', ') FROM t1 JOIN t2 ON t1.PersonId = t2.PersonId GROUP BY t1.PersonId, PersonName
p >
salut en fait, ce n'est pas seulement un article d'achat qui doit être montré.
@FaizalNor, veuillez donc modifier votre question avec le résultat réel que vous souhaitez obtenir
disons que si la ligne est retournée seulement 1, la virgule est toujours là
@FaizalNor group_concat n'ajoutera pas le séparateur ( ',' dans ce cas) s'il n'y a que valeur.