mysql“加入用户ON”

时间:2011-06-27 16:08:49

标签: mysql

我有一个sql语句:

SELECT user.id, user.nickname 
FROM friends 
LEFT JOIN user ON user.id=friends.desuser where friends.orguser = '".$sessionid."' 

它工作正常,结果就像

12  user1
33  user3
etc

但是当我在我的用户数据库中让我们说user1被删除,但是在friends.desuser中仍有记录时,我得到的结果是NULL NULL。

我能做什么,我最少会得到像UserID一样的

12  NULL
33  user3

谢谢

2 个答案:

答案 0 :(得分:0)

如果你真的想要从孤儿的朋友那里返回用户ID,

SELECT friends.desuser, user.nickname

而不是

SELECT user.id, user.nickname

因为user中的ID不存在(因为user中没有匹配的记录)

答案 1 :(得分:0)

使用INNER JOIN。它只会选择两个表中存在的行。或者,如果您仍想获取ID,否则为空行,请使用friends.desuser列。它将被设置,因为您首先从friends选择(连接的左侧)