如何在sql语句?我想要做这样的事情: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
if(buddy.penpalA = 887){
JOIN exchange ON buddy.penpalA = exchange.id
}ELSE{
JOIN exchange ON buddy.penpalB = exchange.id
}
LEFT JOIN cometchat_status ON exchange.id = cometchat_status.userid
if(buddy.penpalA = 887){
WHERE buddy.penpalB =887
}ELSE{
WHERE buddy.penpalA =887
}
ORDER BY username ASC
@Yuck,'case'不会有效这里。 – 2012-01-18 19:27:05
最后的IF子句,无论我读了多少次都没有意义。如果好友,penpalA = 887 - 那么你希望penpalB被检查,否则检查penpala是887--这有点圆。 – Andrew 2012-01-18 19:37:33
@Andrew:对,这一定是:'WHERE penpalA = 887 AND penpalB = 887',因为'else'条件永远不会被满足。 – 2012-01-18 20:05:44