mysql左连接的一个问题

如果左右两表各有5行数据

on left_table.id=right_table.id;

如果右表没有一个与左表匹配,按图片的解释来应该会显示左表五行数据,

但是这里有给疑问,右表是如何与左表匹配的??

如果是右表5条数据与左表每条数据匹配一次,

应该会显示5*5=25行数据,但是其实只有左表5行数据

是如何匹配的???大佬解释下

mysql
左连接
2023-07-04 13:28:18
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
阳祭十八

不管什么join都不会增多表的记录条数。

如何join就是where语句内条件,两个表id相等则join上,即两条横向合成一条。为什么是5不是25条,因为sql是查询语句,返回的是结果,不是过程,25是你认为的两两检查能否join的过程,而非结果。结果只显示a表的记录,右边的b表的列如果join上了就有数据,join不上就为null。

分享
微博
QQ
微信
回复
2023-07-04 14:43:34
相关问题
mysql一个问题有懂吗?
541浏览 • 1回复 待解决
请教一个mysql问题有知道吗?
792浏览 • 1回复 待解决
一个mysql表插入截断问题有懂吗?
324浏览 • 1回复 待解决
问大家一个问题,关于原服务
5156浏览 • 1回复 待解决
关于索引一个问题有懂吗?
997浏览 • 1回复 待解决
如果写一个多级获取数据问题
1533浏览 • 1回复 待解决
数据库一个设计问题有懂吗?
443浏览 • 1回复 待解决