SQL Query中的除法总是等于0

时间:2015-06-03 18:59:20

标签: sql math

基本上我的服务器上有一个表,它是另一个表的镜像减去了一些我不关心的行。我正在尝试使用行数和最大ID来确定复制表时跳过的行百分比。

我之前从未在SQL查询中做过数学运算,这可能是我想念的简单。

这是我的问题:

SELECT 
count(*) As Processed,
MAX(ID) - count(*) As Ignored,
MAX(ID) as Total,
(MAX(ID) - count(*)) / MAX(ID) as PercentIgnored
FROM Table

以下是结果

Processed   Ignored    Total        PercentIgnored
6213074     8462494    14675568     0

如果我手动计算8462494/14675568,它显然不是零。更像是57%。

1 个答案:

答案 0 :(得分:1)

除了转换为链接帖子中指向的float类型之外,您还可以尝试以下方式。

SELECT MAX(ID)*1.0 / (MAX(ID) + count(*)) as PercentIgnored from student