我有以下表格:

'blog_content'



'blog_media'



'blog_media_content'

| blog_id | media_id   |
========================
|  1      |      1     |
|  2      |      2     |
|  3      |      3     |
|  3      |      4     |


我想选择blog_media.uri等于blog_media.media_id的所有blog_media_content.blog_id

请帮助我实现我的目标。

最佳答案

inner joinblog_media表之间的blog_media_content就足够了。

SELECT
bm.uri
FROM blog_media bm
INNER JOIN blog_media_content bmc ON bm.media_id = bmc.media_id
WHERE bmc.blog_id =3;


注意:

如果您需要blog表中的任何其他信息,则需要如下所示的其他inner join

...INNER JOIN blog_table b ON bmc.blog_id = b.blog_id...

编辑:

为了获取所有blog_id的记录:

SELECT
bm.uri
FROM blog_media bm
INNER JOIN blog_media_content bmc ON bm.media_id = bmc.media_id
ORDER BY bmc.blog_id;

关于mysql - MySQL选择具有相同ID的行(3个表),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40886599/

10-10 18:45