• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

MySQL left join right join inner join 差异

mysql 搞代码 7年前 (2018-06-04) 149次浏览 已收录 0个评论

mysql left join right join inner join 区别

请看下面的语句

注意比较06 和07的显示结果,自己测试的 语法没有错误

— left join , right join ,inner join 实验

CREATE DATABASE if NOT EXISTS join_test;
use join_test;
DROP TABLE If EXISTS tbl_a;
create table tbl_a (
id int(11) auto_increment primary key,
name varchar(255),
email varchar(255)
);

DROP TABLE If EXISTS `tbl_b`;
create table `tbl_b`(
`id` int(11) auto_increment primary key,
`name` varchar(255),
`email` varchar(255)
);
use join_test;
— inset into tbl_a
insert into tbl_a values(1,’a_name_001′,’a_email_001′);
insert into tbl_a values(2,’a_name_002′,’a_email_002′);
insert into tbl_a values(3,’a_name_003′,’a_email_003′);
insert into tbl_a values(4,’a_name_004′,’a_email_004′);
insert into tbl_a values(5,’a_name_005′,’a_email_005′);
insert into tbl_a values(7,’a_name_007′,’a_email_007′);

— insert into tbl_b
insert into tbl_b values(1,’b_name_001′,’b_email_001′);
insert into tbl_b values(2,’b_name_002′,’b_email_002′);
insert into tbl_b values(3,’b_name_003′,’b_email_003′);
insert into tbl_b values(4,’b_name_004′,’b_email_004′);
insert into tbl_b values(5,’b_name_005′,’b_email_005′);
insert into tbl_b values(6,’b_name_006′,’b_email_006′);

— left join
select * from tbl_a left join tbl_b on tbl_a.id=tbl_b.id;

查询结果:

id name email id name email 1

1

2

2

3

3

4

4

5

5

7

a_name_001a_email_001b_name_001b_email_001
a_name_002a_email_002b_name_002b_email_002
a_name_003a_email_003b_name_003b_email_003
a_name_004a_email_004b_name_004b_email_004
a_name_005a_email_005b_name_005b_email_005
a_name_007a_email_007

— right join
select * from tbl_a right join tbl_b on tbl_a.id=tbl_b.id;
查询结果:

id name email id name email 1

1

2

2

3

3

4

4

5

5

6

a_name_001a_email_001b_name_001b_email_001
a_name_002a_email_002b_name_002b_email_002
a_name_003a_email_003b_name_003b_email_003
a_name_004a_email_004b_name_004b_email_004
a_name_005a_email_005b_name_005b_email_005
b_name_006b_email_006

— inner join
select * from tbl_a inner join tbl_b on tbl_a.id=tbl_b.id
查询结果:

id name email id name email 1

1

2

2

3

3

4

4

5

5

a_name_001a_email_001b_name_001b_email_001
a_name_002a_email_002b_name_002b_email_002
a_name_003a_email_003b_name_003b_email_003
a_name_004a_email_004b_name_004b_email_004
a_name_005a_email_005b_name_005b_email_005

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:MySQL left join right join inner join 差异

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址