mysql 多表连接查询


本章主要总结了:


mysql的多表连接查询,包括,inner join,left join,right join,full join(由于mysql不支持该连接,所以为了达到效果,只能用union组合左右连接来达到效果)

步骤:

1.建两张表

2.语句介绍

3.mysql 语句

1. table student

+----+----------+
| id | name     |
+----+----------+
|  1 | zhangsan |
|  2 | lisi     |
|  3 | wanger   |
+----+----------+

2.table book


+----+------+
| id | name |
+----+------+
|  1 | java |
|  2 | css  |
|  4 | jsp  |
+----+------+

3. inner join 取到两张表中共有的部分


select student.*,book.* from student inner join book on student.id=book.id;
+----+----------+----+------+
| id | name     | id | name |
+----+----------+----+------+
|  1 | zhangsan |  1 | java |
|  2 | lisi     |  2 | css  |
+----+----------+----+------+

4. left join 显示左表的所有属性,右表中显示匹配的属性,缺省值为null


select student.*,book.* from student left join book on student.id=book.id;
+----+----------+------+------+
| id | name     | id   | name |
+----+----------+------+------+
|  1 | zhangsan |    1 | java |
|  2 | lisi     |    2 | css  |
|  3 | wanger   | NULL | NULL |
+----+----------+------+------+

5.right join 显示右表的所有属性,左表中显示匹配的属性,缺省值为null

select student.*,book.* from student right join book on student.id=book.id;
+------+----------+----+------+
| id   | name     | id | name |
+------+----------+----+------+
|    1 | zhangsan |  1 | java |
|    2 | lisi     |  2 | css  |
| NULL | NULL     |  4 | jsp  |
+------+----------+----+------+

6. full join采用组合左右连接的方式,显示两张表中的所有信息,缺省值为null


select student.*,book.* from student left join book on student.id=book.id union select student.*,book.* from student right join book on student.id=book.id;
+------+----------+------+------+
| id   | name     | id   | name |
+------+----------+------+------+
|    1 | zhangsan |    1 | java |
|    2 | lisi     |    2 | css  |
|    3 | wanger   | NULL | NULL |
| NULL | NULL     |    4 | jsp  |
+------+----------+------+------+



以上是个人总结文档,

以方便以后查阅,

如果路过者调试有问题可以给我留言,一起探讨,我这边测试通过的


评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值