MySQL join 使用方法

JOIN 按照功能大致分为如下三类:

INNER JOIN(内连接,或等值连接):取得两个表中存在连接匹配关系的记录。

LEFT JOIN(左连接):取得左表(table1)完全记录,即是右表(table2)并无对应匹配记录。

RIGHT JOIN(右连接):与 LEFT JOIN 相反,取得右表(table2)完全记录,即是左表(table1)并无匹配对应记录。

注意:mysql不支持Full join,不过可以通过UNION 关键字来合并 LEFT JOIN 与 RIGHT JOIN来模拟FULL join.

 

一.Inner join

内连接,也叫等值连接,inner join产生同时符合A和B的一组数据。

select * from table1 inner join table2 on table1.name = table2.name;

 

二、Left join

left join,(或left outer join:在Mysql中两者等价,推荐使用left join.)左连接从左表(A)产生一套完整的记录,与匹配的记录(右表(B)) .如果没有匹配,右侧将包含null。

SELECT * FROM table1 LEFT JOIN table2 ON table1.name = table2.name;

 

三、Right join

SELECT * FROM table1 RIGHT JOIN table2 ON table1.name = table2.name;

  

 

更新:

UPDATE table1 LEFT JOIN table2 ON table1.id=table2.a_id SET table1.title='aaaaa',table2.body='bbbb' WHERE table1.id=1www

 

删除:

DELETE table1,table2 FROM table1 INNER JOIN table2 ON table1.uid=table2.uid WHERE table1.uid='168953'

 

posted @ 2015-12-23 14:05  斌-逸风  阅读(264)  评论(0编辑  收藏  举报