首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > PB >

有两个表table1和table2,怎么把两个表中提取出来的数据,合并到一个表中呢?如下

2013-06-26 
有两个表table1和table2,如何把两个表中提取出来的数据,合并到一个表中呢?如下各位大侠,有两个表table1和t

有两个表table1和table2,如何把两个表中提取出来的数据,合并到一个表中呢?如下

各位大侠,有两个表table1和table2,从table1中取得数据(ename,count1(*)),从table2中取得数据(ename,count2(*)),如何把把两个表中取得的数据放到一个数据窗口,并算出table2的人数占table1人数的百分比呢。格式如下:

ename  count1(*)  count2(*)   count2(*)/count1(*)

张三      10        4             0.4
李四      8         2             0.25 
王五      6         2             0.33

 

[解决办法]
直接用1条SQL语句完成即可

select ename, max(c1) as c1, max(c2) as c2, case max(c1) when 0 then 0 else cast(max(c2) as decimal(2)) / max(c1) end as div
from
( select ename, count(*) as c1, 0 as c2 from table1 group by ename
union all
  select ename, 0 as c1, count(*) as c2 from table2 group by ename
) a
group by ename

[解决办法]
引用:
引用:
直接用1条SQL语句完成即可

SQL code
select ename, max(c1) as c1, max(c2) as c2, case max(c1) when 0 then 0 else cast(max(c2) as decimal(2)) / max(c1) end as div
from
( select ename, co……


你在sql中,给表2写一个空列不就成了

热点排行