case when 中如何使用计数


提示:两种方法,一种是SUM(1),一种是COUNT(column_name)

SUM(1)指的是:符合要求的返回1,然后case when外部用sum进行求和,

COUNT(column_name)指的是:符合要求的记录一个唯一id,最后就相当于COUNT(id)

示例:

SELECT MIN(province_id) provinceNumber, MIN(province_name) provinceName,
               COUNT(project_id)                                                       a,
               SUM(this_issue_money)                                                   b,
               SUM(CASE
                       WHEN is_not_exit = true THEN
                           1
                   END)                                                                c,
               SUM(this_issue_money)                                                   d,
               SUM(CASE WHEN is_not_exit = true AND enterprise_type_id = 1 THEN 1 END) e,
               SUM(CASE
                       WHEN
                           enterprise_type_id = 1 THEN this_issue_money END)           f,
               SUM(CASE WHEN is_not_exit = true AND enterprise_type_id = 2 THEN 1 END) g,
               SUM(CASE
                       WHEN
                           enterprise_type_id = 2 THEN this_issue_money END)           h,
               SUM(CASE WHEN is_not_exit = true AND enterprise_type_id = 2 THEN 1 END) j,
               SUM(CASE
                       WHEN
                           enterprise_type_id = 2 THEN this_issue_money END)           k
        FROM l

换成COUNT,那么就是

select  COUNT(CASE WHEN is_not_exit = true then id) FROM L

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM