我只需要兩個相應的表格中選擇一行,例如,MySQL的:左連接但從連接表
成員表中選擇一個特定的項目,
member_id member_name
1 xxx
2 yyy
profile_picture表
image_id member_id image_approved
1 1 no
2 1 no
3 1 yes
我想每次從成員表中選擇一行,並從profile_picture中選擇一個認可的圖像。我正在使用左連接,但它不起作用,因爲它複製選定的成員,當此成員有超過1個上傳的圖像時。棘手的部分是我想選擇已被批准的圖像,並且總是會有一張圖片被批准。
SELECT *
FROM member
LEFT JOIN profile_picture
ON profile_picture.member_id = member.member_id
WHERE member.member_id = '1'
我想獲得這個作爲輸出,
member_id member_name image_id image_approved
1 xxx 3 yes
這可能嗎?
謝謝。
編輯:
謝謝你們的建議。你們中許多人使用和建議 - 例如,和profile_picture.image_approved =「是」
它只能當圖像出現。但如果圖像不存在,則即使在圖像不存在的情況下它應該如下輸出,輸出中也沒有任何內容。
member_id member_name image_id image_approved
1 xxx null null
再次感謝!
結果將不包括成員0的圖像。 – ksogor 2010-11-29 13:43:01
從他的問題來看,聽起來不像是這種情況,但這很容易解決。只需將JOIN更改爲LEFT JOIN並將image_approved條件置於ON子句(當前爲USING子句) – 2010-11-29 13:44:35