加入表和Case sql

时间:2016-05-31 06:35:49

标签: mysql sql

我在SQL Select中遇到问题,例如我们有两个用户X和Y,用户X希望看到用户Y以下是这样,当看到他的下面时, 用户Y想知道用户X(以下)中的用户是谁 在此图片中:https://i.imgsafe.org/d2b2d83886.png用户ID为64,想要查看users.id = 50以下

SELECT users.id,users.username,
    CASE WHEN follows.user_id = 68 THEN 1 END AS is_Follow
FROM users
LEFT JOIN follows
    ON follows.follower_id = users.id
WHERE follows.app = 1 AND follows.user_id = 50

但这会让我回报NULL :(我该怎么办?!

1 个答案:

答案 0 :(得分:2)

right的{​​{1}}表上的条件应该在LEFT JOIN子句上,而不在ON子句上:

WHERE

另一件事,你究竟在检查什么?有多少人关注SELECT users.id,users.username, CASE WHEN follows.user_id = 68 THEN 1 ELSE -1 END AS is_Follow --Minus one value means NO. FROM users LEFT JOIN follows ON follows.follower_id = users.id AND follows.app = 1 AND ?因为列的名称听起来并不像它。

编辑:试试这个:

user_id=68