Mysql数据库left join,right join,和inner join的区别,表与语句查询结果展示区别

本文详细介绍了SQL中LEFT JOIN, RIGHT JOIN和INNER JOIN的区别,并通过实例展示了它们的查询结果。LEFT JOIN返回左表的所有记录及匹配的右表记录,RIGHT JOIN反之,INNER JOIN只返回两表联结字段相等的记录。" 76180458,5540893,FPGA结构详解:从IOB到嵌入式硬核,"['硬件开发', 'FPGA设计', '数字电路', '逻辑单元', '存储器']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、sql的left join 、right join 、inner join之间的区别
  left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录   right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录  inner join(等值连接) 只返回两个表中联结字段相等的行举例如下: --------------------------------------------表A记录如下:aID     aNum1     a200501112     a200501123     a200501134     a200501145     a20050115表B记录如下:bID     bName1     20060324012     20060324023     20060324034     20060324048     2006032408--------------------------------------------1.left joinsql语句如下: select * from Aleft join B on A.aID = B.bID结果如下:aID     aNum     bID     bName1     a20050111    1     20060324012     a20050112    2     20060324023     a20050113    3     20060324034     a20050114    4     20060324045     a20050115    NULL     NULL(所影响的行数为 5 行)结果说明:left join是以A表的记录为基础的,A可以看成左表,B可以看成右表,left join是以左表为准的.换句话说,左表(A)的记录将会全部表示出来,而右表(B)只会显示符合搜索条件的记录(例子中为: A.aID = B.bID).B表记录不足的地方均为NULL.--------------------------------------------2.right joinsql语句如下: select * from Aright join B on A.aID = B.bID结果如下:aID     aNum     bID     bName1     a20050111    1     20060324012     a20050112    2     20060324023     a20050113    3     20060324034     a20050114    4     2006032404NULL     NULL     8     2006032408(所影响的行数为 5 行)结果说明:仔细观察一下,就会发现,和left join的结果刚好相反,这次是以右表(B)为基础的,A表不足的地方用NULL填充.--------------------------------------------3.inner joinsql语句如下: select * from Ainnerjoin B on A.aID = B.bID结果如下:aID     aNum     bID     bName1     a20050111    1     20060324012     a20050112    2     20060324023     a20050113    3     20060324034     a20050114    4     2006032404结果说明:很明显,这里只显示出了 A.aID = B.bID的记录.这说明inner join并不以谁为基础,它只显示符合条件的记录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值