PostgreSQL的case when

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PostgreSQL的case when相关的知识,希望对你有一定的参考价值。

select tt.dict_label as display_item,t1.ratio from
(select t.product_level,round(sum(case when t.detect_result=‘2‘ then 1 else 0 end)::NUMERIC/count(1)::NUMERIC,4) as ratio
from t_detect_record t
where t.district=‘3‘ and t.e_commerce_platform=‘3‘
group by t.product_level) t1
left join t_dict tt on t1.product_level=tt.dict_value
where tt.dict_type=‘product_level‘


select country, sum( case when sex = ‘1‘ then   population else 0 end),  --男性人口


 sum( case when sex = ‘2‘ then  population else 0 end)   --女性人口


from table_a   group by country;

 

以上是关于PostgreSQL的case when的主要内容,如果未能解决你的问题,请参考以下文章

PostgreSQL的case when

将嵌套解码转换为等效的 CASE 语句(需要从 Oracle 转换为 PostgreSQL)

如何在 PostgreSQL、PL/pgSQL 上执行匿名代码块切换 CASE 语句?

case语句返回null postgresql时处理空值

在SQL Server和Postgresql中使用CASE作为类似于枢轴的函数

postgreSQL计算总数sum if case when