簡體   English   中英

如何從具有相同ID的多個記錄的另一個表中獲取記錄?

[英]How to Fetch record from another table which is having multiple record for same id?

我的表結構如下

table-1
-------
id
name


table-2
--------
imageId
id ( reference of table1.id)
image

和table1有以下記錄

id     name 
1      A
2      B
3      C

表2有

imageId      id          image
1             1         image1.jpg
2             1         image2.jpg
3             2         image3.jpg

即table1.id在table2中有很多圖像,現在我需要選擇記錄及其相應的圖像(相同id的多個圖像),如

id   name       image
1     A         image1.jpg,image2.jpg
2     B         image3.jpg
select
    b.imageId,
    a.id,
    b.imageName
from
    table-1 a
    right outer join table-2
        on a.id=b.id

這將為您提供以下輸出:

id   name       image

1     A         image1.jpg
1     A         image2.jpg
2     B         image3.jpg

您可以使用GROUP_CONCAT函數將多行中的值轉換為單個逗號分隔的字符串(例如您在示例中所需的結果):

SELECT a.id, a.name, GROUP_CONCAT(b.image) AS images
FROM table1 a
INNER JOIN table2 b ON a.id = b.id
GROUP BY a.id, a.name

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM