复杂(至少对我而言)MySQL查询

时间:2016-01-13 13:59:32

标签: mysql

我还没有找到任何方法来解决这个问题,而没有进行两次单独的数据库查询,并认为我会转到这里看看我试图实现的是否可行。

我有两个数据库表:

messages
--------
...
media ==> Boolean representing if the message has attached media

messagesMedia
-------------
...
messagesID ==> Reference to message

是否可以通过media = 1获取查询以加入所有关联媒体,如果media = 0只返回消息?

谢谢!

1 个答案:

答案 0 :(得分:1)

是的,你可以为此LEFT OUTER JOIN做一次。无论messagesMedia表中是否匹配,您都将获得所有消息记录,如果匹配,您也将获得匹配的记录。

select m.*, mm.*
from messages m
left join messagesMedia mm on m.messagesID = mm.messagesID;