读书人

有两个表table1和table2,怎么把两个表

发布时间: 2013-06-26 14:29:32 作者: rapoo

有两个表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写一个空列不就成了

读书人网 >PB

热点推荐