冷静、沉淀

sybase的外连接

上一篇 / 下一篇  2005-11-17 00:00:00 / 个人分类:Oracle

跟oracle的有不少区别.


今天做了一下实验,发现sybase的外连接跟oracle的大不一样.

还是没有能够吃透sybase.

Oracle 8.1.7下:

drop table GK_ZJZFSQ_DETAIL
/
create table GK_ZJZFSQ_DETAIL
(
GK_ZFPZ_ID int not null
)
/

insert into GK_ZJZFSQ_DETAIL
values(76)
/
insert into GK_ZJZFSQ_DETAIL
values(0)
/

drop table GK_SQZFPZ
/
create table GK_SQZFPZ (
GK_ZFPZ_ID int not null,
CHECK_STATUS varchar(2) default '0' null
)
/
insert into GK_SQZFPZ values(76,'3')
/

commit
/

执行的sql:

select t1.GK_ZFPZ_ID,t3.CHECK_STATUS
from GK_ZJZFSQ_DETAIL t1,GK_SQZFPZ t3
where t1.GK_ZFPZ_ID = t3.GK_ZFPZ_ID(+)
/


select t1.GK_ZFPZ_ID,t3.CHECK_STATUS
from GK_ZJZFSQ_DETAIL t1,GK_SQZFPZ t3
where t1.GK_ZFPZ_ID = t3.GK_ZFPZ_ID(+)
and nvl(t3.CHECK_STATUS,'0') not in ('2','3')
/

结果集分别是:

GK_ZFPZ_ID CH
---------- --
0
76 3

GK_ZFPZ_ID CH
---------- --
0

而在sybase下
select t1.GK_ZFPZ_ID,t3.CHECK_STATUS
from GK_ZJZFSQ_DETAIL t1,GK_SQZFPZ t3
where t1.GK_ZFPZ_ID *= t3.GK_ZFPZ_ID
go

select t1.GK_ZFPZ_ID,t3.CHECK_STATUS
from GK_ZJZFSQ_DETAIL t1,GK_SQZFPZ t3
where t1.GK_ZFPZ_ID *= t3.GK_ZFPZ_ID
and isnull(t3.CHECK_STATUS,'0') not in ('2','3')
go

的结果集分别是:

76 3
0 null

76 null
0 null

大不一样.


TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-10-07  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 13328
  • 日志数: 838
  • 建立时间: 2007-12-28
  • 更新时间: 2008-10-02

RSS订阅

Open Toolbar