HelloWorld 善战者,求之于势,不责于人;故能择人而任势。

知止而后有定,定而后能静,静而后能安,安而后能虑,虑而后能得。物有本末,事有终始。知所先后,则近道矣。

  BlogJava :: 首页 ::  :: 联系 ::  :: 管理 ::
  167 随笔 :: 1 文章 :: 40 评论 :: 0 Trackbacks

表A1
id   A
1    1
2    2
3    3

表A2
id   B
2    22
3    33
5    55

表A3
id   C
1    111
2    222
7    777

表A4
id   D
5    5555
6    6666
7    7777

现在要写个查询,结果为,怎么写呢
id   A    B    C    D
1    1    0    111 0
2    2    22   222 0
3    3    33   0    0
5    0    55   0    5555
6    0    0    0    6666
7    0    0    777 7777

select a5.id,COALESCE(a1."A",0) as A,COALESCE(a2."B",0) as b,
COALESCE(a3."C",0) as c,COALESCE(a4."D",0) as d from
(select distinct id as id from (select id from a1 union
select id from a2 union select id from a3
union select id from a4)as a6) as a5 left join a1 on a5.id = a1.id left join a2 on a5.id = a2.id left join a3 on a5.id = a3.id
left join a4 on a5.id = a4.id



</script>

posted on 2007-08-13 18:59 helloworld2008 阅读(204) 评论(0)  编辑  收藏 所属分类: SQL

只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问