sql 多列求和 当某列有null值时的处理
类别:数据库 浏览量:2271
时间:2016-4-8 sql 多列求和 当某列有null值时的处理
sql 多列求和 当某列有null值时的处理一、SQL几列求和实例
1、比如表usr_table,表有四列
usr, item1, item2, item3
2、针对每个user对item1,item2,item3求和的sql为
select item1+item2+item3 as itemAdd,usr from usr_table
3、如果有一列的值为null时,会导致求不出结果,返回值为 null
4、如果是sum等聚合函数,如果某一行的某列有null值,则 以为某条记录相加的结果为 null,从而导致 sum 结果不准确。
二、解决方法
1、对每列加上 是否为空的判断,如果为空,则赋值0。
2、例如:SQL SERVER中,使用 ISNULL函数;MYSQL中使用 IFNULL函数
3、上面实例的SQL语句做如下修改
select isnull(item1,0)+isnull(item2,0)+isnull(item3,0) as itemAdd, usr from usr_table
select sum(isnull(item1,0)+isnull(item2,0)+isnull(item3,0))as itemSum from usr_table
标签:SQL语句
您可能感兴趣
- mysql中修改表的字段名(MySQL 使用SQL语句修改表名的实现)
- sql语句中leftjoin的作用(sql中的left join及on、where条件关键字的区别详解)
- 创建数据表的sql语句代码(用注解编写创建表的SQL语句)
- sql中的map函数用法(Mapper sql语句字段和实体类属性名字有什么关系)
- SQL语句中单引号
- dedecms时间代码(Dedecms中常用数据调用的sql语句汇总)
- sql语句按字段排序(SQL语句实现表中字段的组合累加排序)
- sql语句left+join详解(SQL语句中JOIN的用法场景分析)
- laravel mysql 操作方式(Laravel使用原生sql语句并调用的方法)
- dedecms滚动代码(dedecms使用sql语句调用文章静态链接地址的方法)
- 怎么查看mysql运行日志(通过Query Profiler查看MySQL语句运行时间的操作方法)
- dedecms SQL语句教程(dedecms各种数字统计SQL语句 包括评论条数,总文档数等等[附修修改版本])
- mysql常用的sql语句大全(mysql建表常用的sql语句汇总)
- navicat中如何使用sql语句(Navicat Premium操作MySQL数据库执行sql语句)
- sql查询union怎么用(SQL语句之Union和Union All的用法)
- mysqlsql语句的优化(MySQL优化之如何写出高质量sql语句)
- 红色代表什么(红色代表什么情感和含义)
- 南宋志南和尚绝句 杨柳风似庙中来(南宋志南和尚绝句)
- 今天要穿什么颜色(今天要穿什么颜色的衣服最吉利)
- 一道高中题-求杯子的高度(一道高中题-求杯子的高度)
- 网坛停摆三巨头亏损惨重,费德勒跌幅88 纳达少赚2400万(网坛停摆三巨头亏损惨重)
- Beyond 版本《无人深空》主线任务攻略 阿特拉斯之道(版本无人深空主线任务攻略)
热门推荐
- dockerfile的镜像原理(dockerfile制作apache镜像的方法)
- dedecms关闭站点(dedecms恶意注册与发广告文章的解决办法)
- docker 部署参数配置(Docker部署nGrinder性能测试平台过程解析)
- laravel怎么查询信息过滤(laravel多条件查询方法and,or嵌套查询)
- php小例子(PHP反射实际应用示例)
- mysql新增字段并添加备注(mysql添加备注信息的实现)
- python用pyqt5制作登录界面(python3+pyqt5+itchat微信定时发送消息的方法)
- mysql8.0关键字段使用(MySQL 8.0新特性之隐藏字段的深入讲解)
- pythonsocket编写web服务器(局域网内python socket实现windows与linux间的消息传送)
- 如何用tomcat部署web项目(一文搞懂如何部署启动多个tomcat并移植项目)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9