当前位置: 代码迷 >> Sql Server >> 简单SQL
  详细解决方案

简单SQL

热度:56   发布时间:2016-04-24 09:43:39.0
求高手指教简单SQL
假设表tmp_xrkh_1
有2个字段,name是学生名字,mark是成绩,总分100,60分及格,,80分良好,90优秀,用一句SELECT查询出来及格与良好以及和优秀的比率
------解决思路----------------------

SELECT CAST(SUM(CASE WHEN MARK>=90 THEN 1 END) AS DECIMAL(18,4))/COUNT(1)[优秀]
,CAST(SUM(CASE WHEN MARK<90 AND MARK>=80 THEN 1 END) AS DECIMAL(18,4))/COUNT(1)[良好]
,CAST(SUM(CASE WHEN MARK<80 AND MARK>=60 THEN 1 END) AS DECIMAL(18,4))/COUNT(1)[及格]
FROM tmp_xrkh_1
  相关解决方案