廢話不多說,直接上圖秒懂。
t1表的結構與資料如下:

t2表的結構與資料如下:
inner join
select * from t1 inner join t2 on t1.id = t2.id;
inner join會把公共部分的資料查詢出來:
left join
select * from t1 left join t2 on t1.id = t2.id;
left join查詢出來的結果和前表記錄數一樣多,後表如果沒有對應記錄,則列為空:
right join
right join能轉化為left join,例如:
select * from t1 right join t2 on t1.id = t2.id;
能轉化為
select * from t2 left join t1 on t1.id = t2.id;
隻是前表發生了變化而已。
大夥可結合自己的業務場景,選擇正确的join。