我有一个有三列的蜂巢表; id,num1,num2
**id num1 num2**
1 23 34
2 1 0
3 5 2
4 6 7
我需要总数的计数,其中num1和num2之间的百分比变化超过20% 即绝对((num1 - num2)/ num2)> = .20
我还需要处理零,因为它们中的任何一个都可能为零,这可能导致NAN
所以上述数据的输出将是: [2,3]因为id 2和3的num1 num2差异超过20%
非常感谢。
答案 0 :(得分:1)
select sum(mycount)
from
(select sum(case when abs((num1 - num2)/num2) >= .2
and num2 <> 0 then 1 else 0 end) as mycount
, id
from mytable
group by id
) t
;