MySQL 合並連表查詢同id多結果(GROUP_CONCAT的使用),需配合GROUP BY使用


1、商品表 goods

id title
1 奶茶
2 咖啡

 

 

 

 

2、門店表 store

id title
1 成都店
2 華陽店
3 高新店

 

 

 

 

 

3、關聯表 goods_store

goods_id store_id
1 1
1 2
2 1
2 2
2 3

 

 

 

 

 

 

 

 

 

5、普通連表查詢結果

SELECT 
g.*,
s.title as store_title
FROM goods as g
JOIN goods_store as gs ON g.id=gs.goods_id
JOIN store as s ON gs.store_id=s.id
id title store_title
1 奶茶 成都店
1 奶茶 華陽店
2 咖啡 成都店
2 咖啡 華陽店
2 咖啡 高新店

 

 

 

 

 

 

 

 

6、使用  GROUP_CONCAT  后

SELECT 
g.*,
GROUP_CONCAT(s.title) as store_title
FROM goods as g
JOIN goods_store as gs ON g.id=gs.goods_id
JOIN store as s ON gs.store_id=s.id
GROUP BY g.id
id title store_title
1 奶茶 成都店,華陽店
2 咖啡 成都店,華陽店,高新店


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM