

以上兩張表分別A,B
想找出A表中所有authorid為8的記錄,并在每條記錄結果欄中關聯顯示出B表內的資料
select `a`.`id`,`a`.`sourcename`,`a`.`authorid`, b.id AS b__id,b.uid AS b__uid,b.cid AS b__cid from `ts_wffiles` a LEFT JOIN `ts_checkin` b on a.id=b.cid where a.authorid=8 GROUP BY id order by id desc
得出的結果是:

我想要得到的結果是紅色框中的記錄應該為上個圖中紅色框內的記錄,也就是取出B表中ID為10的記錄,這里取出的是ID為9
但是如果我在WHERE后面連接一個and b.uid=8,卻又把left join取出來的A表記錄過濾了下,我想保持A表中的所有記錄的同時把B表中符合uid=8的記錄取出來。
求SQL寫法
uj5u.com熱心網友回復:
按照你的意思應該是 LEFT JOIN `ts_checkin` b on a.id=b.cid and b.uid=8轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/57375.html
標籤:MySQL
下一篇:mysql查詢慢求大神解決
