首页 新闻 搜索 专区 学院

DB2数据库sql运算

-1
悬赏园豆:50 [已关闭问题] 关闭于 2017-01-11 10:31

在DB2数据库中,现有两张表,T1和T2,想用sql计算出T1的行数除以T2的行数

db2
sflik的主页 sflik | 初学一级 | 园豆:84
提问于:2016-09-14 10:58
< >
分享
所有回答(4)
0

select (select count(1) from T1)/(select count(1) from T2);????

顾晓北 | 园豆:9959 (大侠五级) | 2016-09-14 11:20
1

select CAST((select count(*) from T1)/(select count(*) from T2) as DECIMAL(18,2)) 

贫民窟大侠 | 园豆:4270 (老鸟四级) | 2016-09-14 11:28

貌似不行啊,报错了

支持(0) 反对(0) sflik | 园豆:84 (初学一级) | 2016-09-14 12:18
1

if select count(*) from T2>0 then

select CAST((select count(*) from T1)/(select count(*) from T2);

你之前报错是因为没有查到数据?

Boblim | 园豆:492 (菜鸟二级) | 2016-09-14 13:31

有数据的,你确定db2可以使用这种写法,我用这种写法报语法错误

支持(0) 反对(0) sflik | 园豆:84 (初学一级) | 2016-09-14 13:33

@sflik: 

select CAST((select count(*) from T1)/(select count(*) from T2) as Row2) as DECIMAL(18,2) where Row2>0

支持(0) 反对(0) Boblim | 园豆:492 (菜鸟二级) | 2016-09-14 13:37

@Boblim:  as DECIMAL(18,2) 在里面

支持(0) 反对(0) Boblim | 园豆:492 (菜鸟二级) | 2016-09-14 13:38

@Boblim:  这样? select CAST((select count(*) from T1)/((select count(*) from T2)as Row2) as DECIMAL(18,2) ) where where Row2>0

支持(0) 反对(0) sflik | 园豆:84 (初学一级) | 2016-09-14 14:14
0

select (select count(*) from T1)/(select count(*) from T2);

JackWang-CUMT | 园豆:2826 (老鸟四级) | 2016-09-20 08:25
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册