sql先分组,再算百分比

Posted 何以平天下

tags:

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

--先分组,再算百分比

SELECT  a.CooperationIntention ,         a.OrganizationID ,         COUNT(*) 数量 ,  

 CONVERT (DECIMAL(18, 2), CAST(COUNT(*) AS FLOAT)         / CAST(( SELECT COUNT(*) FROM SG_Discuss b WHERE a.OrganizationID = b.OrganizationID and  ServerLicenseID = ‘61DD8BE1-9458-41FB-AA56-DA11634E11CD‘ ) AS FLOAT)   ) 占比 FROM    SG_Discuss a WHERE ServerLicenseID = ‘61DD8BE1-9458-41FB-AA56-DA11634E11CD‘ GROUP BY a.CooperationIntention , a.OrganizationID

SELECT  a.CooperationIntention ,         a.OrganizationID ,         COUNT(*) 数量 ,   CONVERT (DECIMAL(18, 2), CAST(COUNT(*) AS FLOAT)         / CAST(( SELECT COUNT(*) FROM SG_Discuss b WHERE a.OrganizationID = b.OrganizationID and ServerLicenseID= ‘61DD8BE1-9458-41FB-AA56-DA11634E11CD‘ and DiscussDate> CONVERT(datetime,‘2018-09-01‘,20) and CooperationIntention in (‘10%‘,‘20%‘)) AS FLOAT)   ) 占比 FROM    SG_Discuss a WHERE ServerLicenseID = ‘61DD8BE1-9458-41FB-AA56-DA11634E11CD‘ and DiscussDate> CONVERT(datetime,‘2018-09-01‘,20)  and CooperationIntention in (‘10%‘,‘20%‘) GROUP BY a.CooperationIntention , a.OrganizationID

以上是关于sql先分组,再算百分比的主要内容,如果未能解决你的问题,请参考以下文章

来自有条件和无条件列的 SQL 查询分组的比率或百分比

当存在 2 个分组条件时如何计算 mysql/sql 中的百分比

按百分位数将类似 sql 的查询的结果分组:在 Redshift / postgresql

SQL 分组不起作用

重学SQL窗口函数

Oracle里SQL语句的百分比运算