总结:
内连接:仅仅显示匹配的行
外连接:设法显示不匹配的行,包括左(外)连接、右(外)连接、全(外)连接
左(外)连接:左表的行全显示(右表不存在匹配时填null)
右(外)连接:右表的行全显示(左表不存在匹配时填null)
全(外)连接:左连接和右连接的结果再做合并(union)
SQL:
ANSI的写法
不太好看,但是意义明显。
内连接:join 或 inner join
左(外)连接:left join
右(外)连接:right join
Oracle的写法
是在需要补充填null的一方添加“(+)”,表示用null去匹配另一边“没有匹配”的行。
内连接:什么也不做
左(外)连接:右边填“(+)”
右(外)连接:左边填“(+)”
练习:
--prepare
create global temporary table temp1 (
id number(3), desc1 char(5)
);
create global temporary table temp2 (id number(3), desc2 char(5));
insert into temp1 values (123, 'ABCDE');
insert into temp1 values (456, 'FGHIJ');
insert into temp2 values (456, 'ZZZZZ');
insert into temp2 values (789, 'MMMMM');
Oracle
--left join
select a.id id_a, b.id id_b
from temp1 a,
temp2 b
where a.id(+)
= b.id
--right
join
select a.id id_a, b.id id_b
from temp1 a, temp2 b
where a.id=
b.id(+)
ASNI
--inner join(inner is optional
)
select ta.id id_a, tb.id
id_b
from temp1 ta
inner join
temp2 tb
on ta.id = tb.id
--left join
select ta.id id_a, tb.id id_b
from temp1 ta
lest join
temp2 tb
on ta.id = tb.id
--right join
select ta.id id_a, tb.id id_b
from temp1 ta
right join
temp2 tb
on ta.id = tb.id
--Oracle全外连接(ASIN略)
select a.id id_a, b.id id_b
from temp1 a, temp2 b
where a.id(+) = b.id
union
select a.id id_a, b.id id_b
from temp1 a, temp2 b
where a.id = b.id(+)
分享到:
相关推荐
MQTT_mqtt连接数据库_Mqtt数据库_mqtt_mqttmysql_mqtt与SQL2008_源码.zip
使VC连接数据库变的更简单
MQTT_mqtt连接数据库_Mqtt数据库_mqtt_mqttmysql_mqtt与SQL2008.zip
关于建立数据库连接池,不用频繁创建数据库连接
ado连接数据库简单程序,适合初学者。
java 数据库连接通用源码 java 数据库连接通用源码
JAVA连接数据库使用大全
linux_下_C_语言_连接_MySQL数据库_(详细注释).txtlinux_下_C_语言_连接_MySQL数据库_(详细注释).txt
此小程序是一个HTML与数据库的连接来实现一些信息的验证.
连接mysql数据库必备的包 没有他你连接不了mysql数据库
MFC_ADO 连接数据库,附有源代码代码(即mfc项目,可在vc6.0中加载)数据库sql2000的分离文件,还有参考网页文档。你可以直接看到运行效果,还可以按照参考网页自己从新做。我是初学者,方便其他初学者学习
C++中用ODBC和ADO方式连接SQL数据库__完成C++中用ODBC和ADO方式连接SQL数据库__完成
简单html注册页面源代码,c#实验前台页面与数据库的连接
数据库连接类说明数据库连接类说明数据库连接类说明
vc 连接sqlserver 、access数据库的例子
将设备通过mqtt上传的数据解析然后插入mysql数据库,同时下发控制命令
一个完整的PHP数据库类,包括数据库连接,查询,修改等,,
用VBnet建立连接数据库,包含源代码,可以下载。
一个jsp连接数据库的实例,很不错,几乎包含了jsp对数据库的所有基本操作。
asp_net连接mysql数据库(内附说明)asp_net连接mysql数据库(内附说明)