我有2個表。一個是proucts列表,第二個是與每個產品相關的圖像列表。
的MySQL 加入2表,顯示結果從2行中的一列
產品爲P
ID | NAME
1 | apple
2 | plum
3 | carrot
4 | strawberry
5 | pie
圖像作爲IM
PRODUCT_ID | IMAGE | I_NAME
1 | 1 | app_abc.jpg
1 | 2 | apple.jpg
1 | 3 | appleonemoretime.jpg
2 | 1 | plum.jpg
2 | 2 | plum2.jpg
2 | 3 | plum3.jpg
2 | 4 | plum4.jpg
3 | 1 | somecarrot.jpg
4 | 1 | s1.jpg
等...
附加信息:
- 每個產品都有分鐘1個圖像。
- 圖像與一個產品連接的最大數量爲60。我想獲得:產品清單,圖像名稱(一行=一種產品)。
- 我將通過product.id搜索產品 - 我想要在一列中獲取圖像,以逗號分隔,我不想獲得60'空'列。
例如:如果我搜索p.id(1,3)我想獲得這樣的:
P.ID | IM1.I_NAME
1 | app_abc.jpg, apple.jpg, appleonemoretime.jpg
3 | somecarrot.jpg
有沒有辦法? 'COALESCE'對此有好處?
我現在擁有的是:
select p.id
from products p
join images im on im.product_id = p.id
where p.id in (1, 3)