读书人

列运算时对值的判断解决方案

发布时间: 2012-01-21 21:31:43 作者: rapoo

列运算时对值的判断
在存储过程中:
我需要对查询出的字段后加一个比例字段,如下:
SELECT 姓名,语文,数学,总分,语文/总分 AS 语文比重,数学/总分 AS 数学比重
FROM 学生成绩表

以上会出现一个问题,当语文成绩为0分时就会出错(分子为0)。所以需要做一个判断语文是否为零,如果不是除出比重,否则比重为0

怎么写??

[解决办法]
分子为0,应该没有问题.你应该判断分母!=0的情况

SELECT 姓名,语文,数学,总分,
case when 总分=0 then 0 else 语文/总分 end AS 语文比重,
case when 总分=0 then 0 else 数学/总分 end AS 数学比重
FROM 学生成绩表

读书人网 >SQL Server

热点推荐