34,873
社区成员
发帖
与我相关
我的任务
分享if object_id('[jgsyzc]') is not null drop table [jgsyzc]
create table [jgsyzc]([zqdm] int,[eps93] numeric(3,2),[eps94] numeric(3,2),[eps95] numeric(3,2))
insert [jgsyzc]
select 1,0.10,0.11,0.12 union all
select 2,0.13,0.14,0.15 union all
select 3,0.16,0.17,0.18 union all
select 4,0.19,0.20,0.21 union all
select 5,0.22,0.23,0.24 union all
select 6,0.25,0.26,0.27
if object_id('[y1993]') is not null drop table [y1993]
create table [y1993]([zqdm] int,[hbl93] numeric(3,2),[hblbfh93] numeric(3,2))
insert [y1993]
select 1,0.30,0.31 union all
select 2,0.32,0.33 union all
select 3,0.34,0.35
if object_id('[y1994]') is not null drop table [y1994]
create table [y1994]([zqdm] int,[hbl94] numeric(3,2),[hblbfh94] numeric(3,2))
insert [y1994]
select 2,0.34,0.35 union all
select 4,0.36,0.37
go
select a.zqdm,[hbl93],hblbfh93,hbl94,hblbfh94,eps93,eps94,eps95
from jgsyzc a left join y1993 b on a.zqdm=b.zqdm
left join y1994 c on a.zqdm=c.zqdm
(6 行受影响)
(3 行受影响)
(2 行受影响)
zqdm hbl93 hblbfh93 hbl94 hblbfh94 eps93 eps94 eps95
----------- --------------------------------------- --------------------------------------- --------------------------------------- --------------------------------------- --------------------------------------- --------------------------------------- ---------------------------------------
1 0.30 0.31 NULL NULL 0.10 0.11 0.12
2 0.32 0.33 0.34 0.35 0.13 0.14 0.15
3 0.34 0.35 NULL NULL 0.16 0.17 0.18
4 NULL NULL 0.36 0.37 0.19 0.20 0.21
5 NULL NULL NULL NULL 0.22 0.23 0.24
6 NULL NULL NULL NULL 0.25 0.26 0.27
(6 行受影响)
select z.zqdm, m.hb193, m.hblbfh93, n.hbl94, n.hblbfh94, z.eps93, z.eps94, z.eps95
from jgsyzc as z
left join y1993 as m
on z.zqdm = m.zqdm
left join y1994 as n
on z.zqdm = n.zqdm
SELECT
A.*,
B.hbl93 ,B.hblbfh93,
C.hbl93 ,C.hblbfh93
FROM
jgsyzc A
LEFT JOIN y1993 B ON A.zqdm=B.zqdm
LEFT JOIN y1994 C ON A.zqdm=C.zqdm
-----------------------------------------
--> 测试时间:2009-07-12
--> 我的淘宝:http://shop36766744.taobao.com/
--------------------------------------------------
if object_id('[jgsyzc]') is not null drop table [jgsyzc]
create table [jgsyzc]([zqdm] int,[eps93] numeric(3,2),[eps94] numeric(3,2),[eps95] numeric(3,2))
insert [jgsyzc]
select 1,0.10,0.11,0.12 union all
select 2,0.13,0.14,0.15 union all
select 3,0.16,0.17,0.18 union all
select 4,0.19,0.20,0.21 union all
select 5,0.22,0.23,0.24 union all
select 6,0.25,0.26,0.27
if object_id('[y1993]') is not null drop table [y1993]
create table [y1993]([zqdm] int,[hbl93] numeric(3,2),[hblbfh93] numeric(3,2))
insert [y1993]
select 1,0.30,0.31 union all
select 2,0.32,0.33 union all
select 3,0.34,0.35
if object_id('[y1994]') is not null drop table [y1994]
create table [y1994]([zqdm] int,[hbl94] numeric(3,2),[hblbfh94] numeric(3,2))
insert [y1994]
select 2,0.34,0.35 union all
select 4,0.36,0.37
select * from [jgsyzc]
select * from [y1993]
select * from [y1994]
select zqdm=isnull(A.zqdm,C.zqdm),hbl93,hblbfh93,hbl94,hblbfh94,eps93,eps94,eps95
from y1993 B right join jgsyzc A on A.zqdm=B.zqdm left join y1994 C on C.zqdm=A.zqdm
/*
zqdm hbl93 hblbfh93 hbl94 hblbfh94 eps93 eps94 eps95
----------- ----- -------- ----- -------- ----- ----- -----
1 .30 .31 NULL NULL .10 .11 .12
2 .32 .33 .34 .35 .13 .14 .15
3 .34 .35 NULL NULL .16 .17 .18
4 NULL NULL .36 .37 .19 .20 .21
5 NULL NULL NULL NULL .22 .23 .24
6 NULL NULL NULL NULL .25 .26 .27
(所影响的行数为 6 行)
*/
drop table jgsyzc,y1993,y1994
select a.zqdm,b.hb193,b.hblbfh93,c.hbl94,c.hblbfh94,a.eps93,a.eps94,a.eps95 from jgsyzc a left join y1993 b on a.zqdm=b.zqdm
left join y1994 c on a.zqdm=c.zqdm