我有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
我怎么办?我也试过RIGHT JOIN和LEFT JOIN ......其他解决方案?
答案 0 :(得分:0)
你想要这样的东西吗?
<强> SQL DEMO 强>
SELECT `id_rooms`, GROUP_CONCAT( CONCAT('<img src="',`url`,'>') SEPARATOR '') as i
FROM images
GROUP BY `id_rooms`;
输出