使用 CASE WHEN 子句 POSTGRES 时的百分比差异
percentage difference when using CASE WHEN clause POSTGRES
这是正确的语法吗?
我正在使用 (new/old)-1 的传统方法来计算昨天注册与昨天注册一周之间的百分比差异。我收到“0”,这似乎不对...
select
sum(case when (timestampregistered::date = current_date - 1) then 1 else 0 end)
/ sum(case when timestampregistered::date = current_date - 8 then 1 else 0 end) - 1 as pct_diff
from customers_table
你正在做整数运算,所以你的答案将是整数。
尝试
[...]then 1.0 else 0.0 end
这是正确的语法吗? 我正在使用 (new/old)-1 的传统方法来计算昨天注册与昨天注册一周之间的百分比差异。我收到“0”,这似乎不对...
select
sum(case when (timestampregistered::date = current_date - 1) then 1 else 0 end)
/ sum(case when timestampregistered::date = current_date - 8 then 1 else 0 end) - 1 as pct_diff
from customers_table
你正在做整数运算,所以你的答案将是整数。 尝试
[...]then 1.0 else 0.0 end