请教大虾们一个问题,谢谢啦

pandarsok 2005-12-10 07:40:14
课程 地区 报考人数 及格人数
语文 上海 22 15
语文 杭州 15 8
语文 苏州 0 0
语文 杭州 12 8
数学 上海 33 11
数学 杭州 22 8
数学 宁波 11 7


我现在要求各个专业的总的报考人数,及格人数与及格率
select 课程,sum(报考人数) as 报考人数,sum(及格人数)as 及格人数,sum(报考人数)/sum(及格人数) as 及格率
group by 课程

这样写出现了一个问题,如语文,苏州地区其报考人数为0,因此这样一除就出现除数为0的情况,对于这种情况,我想将其及格率变为null,请问我要怎么写,谢谢
...全文
135 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
lw1a2 2005-12-10
  • 打赏
  • 举报
回复
select 课程,sum(报考人数) as 报考人数,sum(及格人数)as 及格人数,
(case sum(及格人数) when 0 then null else sum(报考人数)/sum(及格人数) end )as 及格率
group by 课程

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧