加入另一个有条件的表

时间:2014-02-13 17:36:42

标签: mysql sql join conditional-statements

如果当前表中的列等于特定值,我想加入另一个表。 (ENUM类型)

例如,假设一个status列有4种类型(Public,OnlyMe,Friend,Group)

我希望仅在groups =群组

时加入表格status

像这样。

这不是mysql语法。

SELECT * FROM posts WHERE ( status = Public OR status = OnlyMe OR status = Friend )
OR ( IF(status=Group) JOIN groups )

我怎么能在mysql中做到这一点?

1 个答案:

答案 0 :(得分:0)

像这样的东西(我为你的表制作了几个列名):

SELECT p.id, p.status, p.text, g.name
FROM posts p
    LEFT OUTER JOIN groups g
        ON (p.status = 'Group' AND p.groupId = g.id);