sql的连接查询怎么做?

sql的连接查询怎么做?,第1张

1、首先在电脑中打开sql,在外层查询中写上S【elect * From S】查询出学生信息,如下图所示

2、然后,再以同样的方法找出SC选修表,如下图所示。

3、此时,就可以在这里利用等值连接将S和SC表连接,如下图所示。

4、但是,因为这是不同层级的查询,因此需要Exists谓词将他们连接。

5、运行后,就可以看到这样的结果,如下图所示就完成了。

一、内连接(Inner Join)

select * from a inner join b on a.name=b.name

语句的结果为同时匹配表a和表b的记录集。即内连接取的是两个表的交集。

二、全外连接(full outer join)

select * from a full outer join b on a.name=b.name

此语句的结果为表a与表b的并集,即任意一个表的内容都将被查询出来,如果另一个表无对应的项,则显示为null

select * from a full outer join b on a.name=b.name where a.name is null or b.name is null

此语句的结果为表a与表b的并集除去两表的交集。即除去了两表都有的部分,剩余的是两表各自不同的部分

三、左外连接(left outer join)

select * from a left outer join b on a.name=b.name

此语句的结果为表a的所有项加表b与a相匹配的项,b中没有与a匹配的项时显示为null

select * from a left outer join b on a.name=b.name where b.name is null

此语句的结果为表a的所有项除去两表的交集

四、右外连接(right outer join)

select * from a right outer join b on a.name=b.name

此语句的结果为表a与表b匹配的项加表b的所有项,a中没有与b匹配的项时显示为null

select * from a right outer join b on a.name=b.name where a.name is null

此语句的结果为表b的所有除去两表的交集


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10027995.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存