2011-06-27 59 views
0

我有一個SQL語句:mysql的「加入用戶ON」

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。

我能做些什麼,我最少會得到像

12 NULL 
33 user3 

用戶ID謝謝

+1

做一個正確的加入。 – Rahul

回答

0

如果你真的想返回用戶ID一樣,從已經成爲孤兒的朋友,

SELECT friends.desuser, user.nickname 

而不是

SELECT user.id, user.nickname 

因爲ID不會user存在(因爲沒有匹配的紀錄user

+0

只是偉大而快速的答案:)謝謝 –

0

要麼使用INNER JOIN。它只會選擇兩個表中存在的行。或者,如果您仍希望獲得該ID,但如果您還想獲得該ID,請使用friends.desuser列。它會被設置,因爲您首先選擇friends(加入的左側)

+0

@pst:是的,我發現我的答案後發現。更新! – knittl