当前位置:Gxlcms > mysql > sqlserver数据库的左右外连接

sqlserver数据库的左右外连接

时间:2021-07-01 10:21:17 帮助过:69人阅读

--左向外联; --如果主表左表中的行没有匹配连接表的行,结果中相关联来自连接表的列显示null; select * from members aleft join orders b on a.M_account=b.M_account 查询结果: liuzc518刘志成1972-05-18男湖南株洲3500.0liuzc518NULLNULLNULLNULLNULLNULL

--左向外联;
--如果主表左表中的行没有匹配连接表的行,结果中相关联来自连接表的列显示null;

select * from members a
left join orders b on a.M_account=b.M_account


查询结果:

liuzc518	刘志成	1972-05-18	男	湖南株洲	3500.0	liuzc518	NULL	NULL	NULL	NULL	NULL	NULL	NULL
zhao888	赵爱云	1972-02-12	男	湖南株洲	5500.0	zhao888	zhao888	0240810333	2	2005-06-06 00:00:00.000	1	1	0
wangym	王咏梅	1974-08-06	女	湖南长沙	4000.0	wangym0806	wangym	0910810001	1	2005-08-09 00:00:00.000	1	0	0
jinjin	津津有味	1982-04-14	女	北京市	8200.0	jinjin	jinjin	0910810004	1	2005-08-09 00:00:00.000	1	1	1
jinjin	津津有味	1982-04-14	女	北京市	8200.0	jinjin	jinjin	0910810004	2	2005-06-06 00:00:00.000	1	0	0
lfz	刘法治	1976-08-26	男	天津市	4500.0	lfz0826	lfz	0910810001	1	2005-08-09 00:00:00.000	0	0	0
lfz	刘法治	1976-08-26	男	天津市	4500.0	lfz0826	lfz	0910810004	2	2005-08-09 00:00:00.000	1	1	1
lfz	刘法治	1976-08-26	男	天津市	4500.0	lfz0826	lfz	0910810004	2	2005-06-06 00:00:00.000	1	1	1
zhangzl	张自梁	1975-04-20	男	湖南株洲	4300.0	zhangzl	NULL	NULL	NULL	NULL	NULL	NULL	NULL


--右向外联;(与左联接相反)

select * from members a
right join orders b on a.M_account=b.M_account


查询结果:

NULL	NULL	NULL	NULL	NULL	NULL	NULL	liuzc	0140810324	1	2005-10-09 00:00:00.000	0	0	0
NULL	NULL	NULL	NULL	NULL	NULL	NULL	liuzc	0910810004	2	2005-10-09 00:00:00.000	1	1	0
NULL	NULL	NULL	NULL	NULL	NULL	NULL	liuzc	0910810001	1	2005-10-09 00:00:00.000	1	1	0
wangym	王咏梅	1974-08-06	女	湖南长沙	4000.0	wangym0806	wangym	0910810001	1	2005-08-09 00:00:00.000	1	0	0
jinjin	津津有味	1982-04-14	女	北京市	8200.0	jinjin	jinjin	0910810004	1	2005-08-09 00:00:00.000	1	1	1
lfz	刘法治	1976-08-26	男	天津市	4500.0	lfz0826	lfz	0910810001	1	2005-08-09 00:00:00.000	0	0	0
lfz	刘法治	1976-08-26	男	天津市	4500.0	lfz0826	lfz	0910810004	2	2005-08-09 00:00:00.000	1	1	1
lfz	刘法治	1976-08-26	男	天津市	4500.0	lfz0826	lfz	0910810004	2	2005-06-06 00:00:00.000	1	1	1
jinjin	津津有味	1982-04-14	女	北京市	8200.0	jinjin	jinjin	0910810004	2	2005-06-06 00:00:00.000	1	0	0
zhao888	赵爱云	1972-02-12	男	湖南株洲	5500.0	zhao888	zhao888	0240810333	2	2005-06-06 00:00:00.000	1	1	0


--全外连接;
全外连接是左联接和右连接的结合,返回左表和右表中所有的行;如果行在另一个表中没有匹配,另一个表中的select子语句
的列显示的为null,反之,结果中的整个行包含两个表的数据值

select * from members a
full join orders b on a.M_account=b.M_account


查询结果:

liuzc518	刘志成	1972-05-18	男	湖南株洲	3500.0	liuzc518	NULL	NULL	NULL	NULL	NULL	NULL	NULL
zhao888	赵爱云	1972-02-12	男	湖南株洲	5500.0	zhao888	zhao888	0240810333	2	2005-06-06 00:00:00.000	1	1	0
wangym	王咏梅	1974-08-06	女	湖南长沙	4000.0	wangym0806	wangym	0910810001	1	2005-08-09 00:00:00.000	1	0	0
jinjin	津津有味	1982-04-14	女	北京市	8200.0	jinjin	jinjin	0910810004	1	2005-08-09 00:00:00.000	1	1	1
jinjin	津津有味	1982-04-14	女	北京市	8200.0	jinjin	jinjin	0910810004	2	2005-06-06 00:00:00.000	1	0	0
lfz	刘法治	1976-08-26	男	天津市	4500.0	lfz0826	lfz	0910810001	1	2005-08-09 00:00:00.000	0	0	0
lfz	刘法治	1976-08-26	男	天津市	4500.0	lfz0826	lfz	0910810004	2	2005-08-09 00:00:00.000	1	1	1
lfz	刘法治	1976-08-26	男	天津市	4500.0	lfz0826	lfz	0910810004	2	2005-06-06 00:00:00.000	1	1	1
zhangzl	张自梁	1975-04-20	男	湖南株洲	4300.0	zhangzl	NULL	NULL	NULL	NULL	NULL	NULL	NULL
NULL	NULL	NULL	NULL	NULL	NULL	NULL	liuzc	0140810324	1	2005-10-09 00:00:00.000	0	0	0
NULL	NULL	NULL	NULL	NULL	NULL	NULL	liuzc	0910810004	2	2005-10-09 00:00:00.000	1	1	0
NULL	NULL	NULL	NULL	NULL	NULL	NULL	liuzc	0910810001	1	2005-10-09 00:00:00.000	1	1	0

人气教程排行