[英]Get data with join in MySQL
我在MySQL中有以下表格:
表格項目:
id item_name contact_id
1 Cocacola 1;3
2 Clothes 2;3
表接觸
id name tel
1 Dona xxx-xxx-xxxxx
2 Maro xxx-zzz-zzzzz
3 Sana yyy-mmm-mmmmm
加入后結果需要:
id item_name contact_tel
1 Cocacola xxx-xxx-xxxxx, yyy-mmm-mmmmm
2 Clothes xxx-zzz-zzzzz, yyy-mmm-mmmmm
我可以在MySQL中使用join獲得類似的結果嗎?
SELECT
item.id,
item.item_name,
GROUP_CONCAT(tel) contact_tel
FROM
item LEFT JOIN contact
ON FIND_IN_SET(contact.id, REPLACE(item.contact_id, ';', ','))
GROUP BY
item.id,
item.item_name
請看這里的小提琴。 由於使用FIND_IN_SET聯接表無法使用索引,因此性能會很慢。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.