从两个sql表中选择rooms和image,用第一个表显示所有查询第二个表号

jtw3ybtb  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(214)

我有2个表、房间和图像,我想显示包含该特定酒店所有房间的行,并显示房间中的每个图像,但问题是当我使用join select时,显示第二个表中所有查询中的8行,这意味着给我看3次(这个房间我有3张照片)单人房和5次双人房(这个房间我有5张照片),所以给我看8行,每个房间我只想要2行,每个房间有3张和5张照片

table 1 - rooms
id, id_hotel, type_room
1, 1, single
2, 2, double

table 2 - images
id, id_rooms, url
1, 1, image-A.jpg
2, 1, image-b.jpg
3, 1, image C.jpg
4, 2, image D.jpg
5, 2, IMAGE E.jpg
6, 2, IMAGE f.jpg
7, 2, IMAGE g.jpg
8, 2, IMAGE h.jpg

我该怎么办??我也试过右连接和左连接。。。其他解决方案?

2lpgd968

2lpgd9681#

你想要这样的东西吗?
sql演示

SELECT `id_rooms`, GROUP_CONCAT( CONCAT('<img src="',`url`,'>') SEPARATOR '') as i
FROM images
GROUP BY `id_rooms`;

输出

相关问题