為進行演示先簡單的 建兩張表
1.使用者表 t_user , 使用者購買記錄表為 t_buy_log (兩者是一對多的關係)
2.填充資料查詢 t_user表
- 查詢 t_bug_log表
4.一般常用的 當進行 以t_user 表為主 進行左連結查詢時 會把 使用者所有的 資料查出來 ,右表沒有的記錄為 欄位填空 null;
SELECT t.*, b.id bid, b.product_id , b.status from t_user t LEFT JOIN t_buy_log b on t.id= b.uid;
5.若想對上面查出後的資料 進行篩選過濾 只需在 where 後加條件便可
注意此時 使用者wanger 已被過濾掉了
6.若想保留 所有t_user表記錄 又查詢出其是否成功(或其他條件)購買過的記錄,只需把條件 寫在on 後面 如下
(圖6)
總結 條件寫在 where 後是對連結串列查出結果之後 對資料按條件進行過濾, 加在on 後面 是先對某張表以某張表的條件(如圖6) 進行查詢過濾 再進行聯表。
(但是 若保留所有t_user表記錄 用 INNER JOIN 並不好使)
本作品採用《CC 協議》,轉載必須註明作者和本文連結