在MySQL中加入两个表,从第二个表中只返回一行

Rau*_*aul 9 mysql join row

我有两张桌子:画廊和图片:

画廊

id           int (auto increment, primary key)
name         varchar
Run Code Online (Sandbox Code Playgroud)

图片

id           int (auto increment, primary key)
picture      varchar
gallery_id   int (foreign key)
Run Code Online (Sandbox Code Playgroud)

如何连接这两个表,显示左表(图库)中每一行只是第二个表的第一行,而没有遍历第二个表中的所有行?我正在使用MySQL.

我的目标是创建一个页面,其中包含显示每个图库的图片的现有图库列表,作为指向详细信息页面的链接以及该图库的所有图片.


我在这个网站上搜索过这个问题,但类似的问题太复杂了.我只对这个简单的例子感兴趣.

Ste*_*ert 13

EDITED

显然在MySQL数据库中进行分组可以帮到你.

数据库列是 main_id, sub_id, sub_main_id, sub_data

SELECT *
FROM tblmain
  inner join sub on sub.sub_main_id = main_id
group by main_id;
Run Code Online (Sandbox Code Playgroud)

没有这个组我有这些记录:

1, 1, 1, 'test 1'
1, 2, 1, 'test 2'
2, 3, 2, 'test 3'
3, 4, 3, 'test 4'
2, 5, 2, 'test 5'
Run Code Online (Sandbox Code Playgroud)

分组后,我得到这个结果:

1, 1, 1, 'test 1'
2, 3, 2, 'test 3'
3, 4, 3, 'test 4'
Run Code Online (Sandbox Code Playgroud)