Mysql left join & right join& jion in

1.创建测试表https://www.cndba.cn/hbhe0316/article/22210

mysql> select * from t1;
+------+--------+
| id   | kemu   |
+------+--------+
|    1 | yuwen  |
|    2 | shuxue |
|    3 | yingyu |
+------+--------+
3 rows in set (0.00 sec)
mysql> select * from t2;
+------+-------+
| id   | score |
+------+-------+
|    4 | 80    |
|    2 | 90    |
|    3 | 100   |
+------+-------+
3 rows in set (0.00 sec)

2.left join
顾名思义,就是“左连接”,表1左连接表2,以左为主,表示以表1为主,关联上表2的数据,查出来的结果显示左边的所有数据,然后右边显示的是和左边有交集部分的数据。如下:

mysql> select * from t1 left join t2 on t1.id=t2.id;
+------+--------+------+-------+
| id   | kemu   | id   | score |
+------+--------+------+-------+
|    2 | shuxue |    2 | 90    |
|    3 | yingyu |    3 | 100   |
|    1 | yuwen  | NULL | NULL  |
+------+--------+------+-------+
3 rows in set (0.00 sec)

3.right join

https://www.cndba.cn/hbhe0316/article/22210
https://www.cndba.cn/hbhe0316/article/22210 https://www.cndba.cn/hbhe0316/article/22210 https://www.cndba.cn/hbhe0316/article/22210

“右连接”,表1右连接表2,以右为主,表示以表2为主,关联查询表1的数据,查出表2所有数据以及表1和表2有交集的数据,如下:https://www.cndba.cn/hbhe0316/article/22210https://www.cndba.cn/hbhe0316/article/22210

mysql> select * from t2 left join t1 on t2.id=t1.id;
+------+-------+------+--------+
| id   | score | id   | kemu   |
+------+-------+------+--------+
|    2 | 90    |    2 | shuxue |
|    3 | 100   |    3 | yingyu |
|    4 | 80    | NULL | NULL   |
+------+-------+------+--------+
3 rows in set (0.00 sec)

4.join
join,其实就是“inner join”,为了简写才写成join,两个是表示一个的,内连接,表示以两个表的交集为主,查出来是两个表有交集的部分,其余没有关联就不额外显示出来,这个用的情况也是挺多的,如下

https://www.cndba.cn/hbhe0316/article/22210
https://www.cndba.cn/hbhe0316/article/22210
https://www.cndba.cn/hbhe0316/article/22210
mysql> select * from t1 join t2 on t1.id=t2.id;
+------+--------+------+-------+
| id   | kemu   | id   | score |
+------+--------+------+-------+
|    2 | shuxue |    2 | 90    |
|    3 | yingyu |    3 | 100   |
+------+--------+------+-------+
2 rows in set (0.00 sec)

版权声明:本文为博主原创文章,未经博主允许不得转载。

MYSQL

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值