两个SQL JOIN

时间:2012-01-18 18:23:25

标签: mysql sql join

我有以下SQL,它会创建一个包含其他信息的好友列表:

SELECT DISTINCT exchange.id userid, exchange.name username, exchange.lastactivity     lastactivity, exchange.id avatar, exchange.id link, cometchat_status.message, cometchat_status.status
FROM buddy
JOIN exchange ON buddy.penpalA = exchange.id
LEFT JOIN cometchat_status ON exchange.id = cometchat_status.userid
WHERE buddy.penpalB =887
ORDER BY username ASC 

它适用于显示当前成员为penpalA的某些朋友的列表,但是我想这样做以便它还检查penpalB是否是当前成员,如果是,则从该列获取信息而不是另一个作为penpalA或penpalB可能是当前成员,它目前没有检查这个。

我如何修改它以使其有效?

1 个答案:

答案 0 :(得分:0)

你有没有设置某个值的字段来定义某些东西是否设置为当前?例如假设你有一个名为“current”的数据库表中的字段,那么该值可以是0或1如果它不是当前的,则为0.0,如果是当前的则为1。 现在,在查询中,您可以添加WHERE current ='1',并根据该数据提取您想要的相应字段。