求sum和avg,急

liuyyqz 2003-10-03 05:22:25
我的表是一个成绩表有这样的字段,
语文 ,数学,外语
我现在想再加两个字段,一个是sum求和字段,另一个是avg求平均值的字段,
sum=语文+数学+外语,但当语文,数学或外语中的一个字段的记录为空的时候就没有作用啦,另外avg该如何,不如当语文记录为空是,只求出数学和外语的平均值。
该如何?
...全文
40 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
westbulls 2003-10-03
  • 打赏
  • 举报
回复
请使用isnull()函数
pengdali 2003-10-03
  • 打赏
  • 举报
回复
select *,isnull(语文,0)+isnull(数学,0)+isnull(外语,0) 总成绩,(isnull(语文,0)+isnull(数学,0)+isnull(外语,0))/3 平均成绩 from 成绩表
txlicenhe 2003-10-03
  • 打赏
  • 举报
回复
1:
Select IsNull(语文,0) + isNull(数学,0) + IsNull(外语,0) as 总分,
(case when IsNull(语文,0) + isNull(数学,0) + IsNull(外语,0) = 0 then 0 else
(IsNull(语文,0) + isNull(数学,0) + IsNull(外语,0))/
((case when 语文 is null then 0 else 1 end) + (case when 语文 is null then 0 else 1 end)+(case when 语文 is null then 0 else 1 end)) end as 平均值
from 成绩表

34,874

社区成员

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

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