объединить таблицу для каждой переменной - PullRequest
1 голос
/ 11 июля 2020

скажем, у меня есть 2 таблицы:

таблица 1:

PersonID      PersonName
1             Micheal
2             Edward
3.            Nord
4.            Stephanie

Таблица 2

PurchaseID      PurchaseItem.      PersonID
1               Rack               1
2               Desk               1
3.              Lamp               2
4.              Table              3

со стандартным соединением, результат запроса может вернуть

1      Micheal     Rack
2.     Micheal     Desk
3      Edward      Lamp
4      Nord        Table

, но мне нужно, чтобы результат отображался как:

1      Micheal     Rack, Desk
2      Edward      Lamp
3      Nord        Table

Ответы [ 3 ]

0 голосов
/ 11 июля 2020
select t1.personid, t1.personname,
       group_concat(t2.PurchaseItem)
from t1
join t2 on t1.personid = t2.personid
group by t1.personid, t1.personname
0 голосов
/ 11 июля 2020

Вы можете сгруппировать по PersonName и использовать group_concat для объединения PurchaseItem s:

SELECT   t1.PersonId, PersonName, GROUP_CONCAT(PurchaseItem, ', ')
FROM     t1
JOIN     t2 ON t1.PersonId = t2.PersonId
GROUP BY t1.PersonId, PersonName
0 голосов
/ 11 июля 2020

Вы можете попробовать что-то вроде этого:

Select t1.personid, t1.personname, group_concat(t2.purchase_item) 
from table1 t1 join table2 t2
on t1.personId = t2.personId
 group by personID;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...