我有兩個表:如何在Mysql中執行一個查詢以獲取用戶名和相同的查詢以從同一用戶表中獲取另一個用戶名?
Users Mail
------- ------
ID | Username ID | UserID | SenderID | Something
--------------- ---------------------------------------------------
1 | A 1 | 2 | 1 | Becoming Mad with SQL
2 | B 2 | 3 | 4 | Mee too
我想這一點:
SELECT *
a.userid, a.senderid, a.something,
b.username
FROM
mail a
LEFT JOIN users b on b.id=a.senderid
WHERE
a.id='1'
輸出爲/相似:
a.Userid | a.senderid | a.something | b.username
--------------------------------------------------
2 | 1 | becoming.. | A
我的預期輸出是這樣的(用戶名B和A的一排):
Userid | senderid | something | username | Username of UserID
---------------------------------------------------------------
2 | 1 | becoming..| A | B
如何在同一個查詢中獲取UserID及其用戶名?因爲我已經有left join users b on b.id=a.senderid
哦,我剛剛看到以前的答案 - 這兩個都做(幾乎)相同的事情。大多數人喜歡JOIN符號更多,但我更習慣於另一個,因爲它是我從我正在從事的項目上的最後一名DBA繼承的......差異在於「LEFT JOIN」將包含所有項目在左側表格中,無論右側表格中是否有匹配的條目。 – Poodlehat 2012-02-23 19:55:21