SQL中的连接查询

一.INNER   JOIN

  join   是inner   join的简写形式。INNER   JOIN是组合两个表最常用的方法。INNER   JOIN是基于一个判别式进行的,这个判别式称为连接条件。连接条件和WHERE子句一起定义。连接条件由来自两个表中的列组成,并使用一个比较条件来对 列的值进行比较。通过比较的值包含在结果数据集中,以下是Inner   JOIN的语法:

 

语法1:(ANSI   92)
Select   <select_list>
FROM   <table1>   INNER   JOIN   <table2>
ON   <table1> . <column   name>   =   <table2> . <column   name>


语法2:
Select   <select_list>
FROM   <table1> , <table2>   WHERE   <table1> . <column   name>   =   <table2> . <column   name>
在FROM   子句中可为表定义别名,并在任何地方都可用别名代替真名。
注意:如果作为连接条件的列中有空值,则空值不能和任何值匹配,因此结果中不包含有空值的行。

 

二.outer   join   又分left   outer   join   和right   outer   join

 

Left   Outer   JOIN
在Inner   JOIN中,只有在两个表中匹配的行才能在结果数据集中。但在Left   Outer   JOIN中,所有左边表中的行都出现在结果数据集中,如果左边表中的某一行在右边表中没有匹配的行,则以空值取代右边表中的值和它连接。
语法如下:(ANSI   92)
Select   <select_list>
FROM   <table1>   LEFT   OUTER   JOIN   <table2>
ON   <table1> . <column   name>   =   <table2> . <column   name>


Right   Outer   JOIN
Right   Out   JOIN和Left   Outer   JOIN相似,不同的是把右边的表作为外部表(所有右边表中的行包含在结果数据集中)。
语法如下:
Select   <select_list>
FROM   <table1>   RIGHT   OUTER   JOIN   <table2>
ON   <table1> . <column   name>   =   <table2> . <column   name>

 


三.Full   Outer   JOIN
在Full   Outer   JOIN中,所有两个表中的行都包含在结果数据集中。
语法如下:
Select   <select_list>
FROM   <table1>   FULL   OUTER   JOIN   <table2>
ON   <table1> . <column   name>   =   <table2> . <column   name>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值