天涯论坛

 找回密码
 立即注册
搜索
查看: 64|回复: 3

数据库内连接以及上下连接的区别

[复制链接]

3069

主题

3万

回帖

9915万

积分

论坛元老

Rank: 8Rank: 8

积分
99158935
发表于 2024-8-4 11:02:39 | 显示全部楼层 |阅读模式

在数据库中,查找数据时,有时候触及到多表查找,多表查找有内连接,左连接和右连接等几种状况。这次咱们介绍内连接,左连接以及右连接的区别。

首要咱们来看一下内连接,左连接以及右连接的定义。

内连接

进行多表查找时,根据匹配要求,在结果集中只保存各个表中满足匹配要求的记录。

左连接

在连接查找过程中,以左表为主表,在结果集中保存左表中的所有记录及右表中满足匹配要求的记录。

右连接

在连接查找过程中,以右表为主表,在结果集中保存右表中的所有记录及左表中满足匹配要求的记录。

此刻咱们经过例子来讲明内连接,左连接以及右连接的区别。

#新建一个数据库,名字叫lianxi

create database lianxi default CHARACTER set utf8;

#选取运用的数据库lianxi

use lianxi;

#新建一张兴趣表(个人编号,个人姓名,个人兴趣)

create table habit

(

id int,

name varchar(20),

ah varchar(20)

);

#新建一张宠物表(个人编号,个人姓名,养的宠物)

create table pet

(

id int,

name varchar(20),

cw varchar(20)

)

#给兴趣插进三条数据

insert into habit values(1,"zhang1",”fishing”);

insert into habit values(2,"zhang2",”swimming”);

insert into habit values(3"zhang2",”running”);

#给宠物表插进三条数据

insert into pet values(1,"zhang1",”pig”);

insert into pet values(2,"zhang2",”dog”);

insert into pet values(3,"li3",”duck”);

内连接:在结果集中只保存各个表中满足匹配要求的记录

SELECT a.name,a.cw,b.ah from pet a join habit b on a.name=b.name;

在pet表和habit表中name字段能够相关起来的仅有zhang1和zhang2

因此查找结果中只展示zhang1和zhang2的name,cw和ah的数据。

左连接:在结果集中保存左表中的所有记录及右表中满足匹配要求的记录。

SELECT a.name,a.cw,b.ah from pet a left join habit b on a.name=b.name;

     pet表是左表,habit是右表,展示pet表中的所有name和cw两个字段的值,右表habit只展示zhang1和zhang2的ah的值

右连接:在结果集中保存右表中的所有记录及左表中满足匹配要求的记录。

SELECT a.name,a.cw,b.ah from pet a right join habit b on a.name=b.name;

      pet表是左表,habit是右表,展示右表habit中ah字段的所有值,左表pet只展示zhang1和zhang2的name和cw字段的值




上一篇:inner join/left join/right join的区别
下一篇:Mysql面试题:内连接、左连接、右连接的区别
回复

使用道具 举报

3069

主题

2万

回帖

9913万

积分

论坛元老

Rank: 8Rank: 8

积分
99138952
发表于 2024-10-15 15:04:46 | 显示全部楼层
我赞同你的看法,你的智慧让人佩服,谢谢分享。
回复

使用道具 举报

2946

主题

2万

回帖

9997万

积分

论坛元老

Rank: 8Rank: 8

积分
99979427
发表于 2024-10-23 05:45:53 | 显示全部楼层
我们有着相似的经历,你的感受我深有体会。
回复

使用道具 举报

2986

主题

3万

回帖

9956万

积分

论坛元老

Rank: 8Rank: 8

积分
99569168
发表于 2024-10-28 11:27:25 | 显示全部楼层
我完全同意你的观点,说得太对了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

站点统计|Archiver|手机版|小黑屋|天涯论坛 ( 非经营性网站 )|网站地图

GMT+8, 2024-11-22 22:16 , Processed in 4.890439 second(s), 40 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.