文档章节

使用mysql 函数 IFNULL 解决某些字段为null

之渊
 之渊
发布于 2017/07/25 17:38
字数 332
阅读 5
收藏 1
点赞 0
评论 0

在开发过程中, 特别是 前后分离的时候, 某些 对象的属性会是 null 的, 这样的情况,对前端肯定不好的。。。 就算是自己 开发,估计看到null都是比较头疼的吧。。。

解决方式1

解决方案是有, 一个就是 使用 json ,设置格式,将 null 属性的转为对应的 空字符串,或者是 默认值。。。 这样是可以,可是有时候会比较麻烦,因为 公用 一个bean对象的话,而且有些项目 是 没有 集成 json和配置对应的格式化的。

解决方式2

设置字段的时候尽量 带上默认值,可是还是有这样的情况发生,特别是 join 查询的,级联查询的时候,某些 字段可能并没有默认值,还是有点郁闷

解决方式 3

将 获取的对象,某次都 判断这个属性是否会有 null 的情况发生,,, 这样会导致代码比较多一些吧, 写多了,特别烦,,,

解决方式,使用 IFNULL 的SQL 函数, 在数据库层帮我们解决了, 减少了 代码量

比如: IFNULL(b.deptName ,' ')
如果 属性值为 null ,就使用 空字符串

参考地址: http://www.jb51.net/article/60922.htm

© 著作权归作者所有

共有 人打赏支持
之渊
粉丝 11
博文 495
码字总数 145190
作品 0
佛山
程序员
mysql IFNULL IF

假设有一数据表的状态字段设计为varchar类型,有以下值:NULL,pending,refund,cancel. 我们知道查询状态为cancel的订单,SQL语句可以这样写:SELECT * FROM qorder WHERE status = 'cancel' ...

chenzy526 ⋅ 2015/07/27 ⋅ 0

SQL --ifnull的使用

mysql的ifnull大伙都不陌生,肯定是用过很多次了基本用法:ifnull(expr1,expr2)如果expr1不是null,则ifnull()返回expr1的值,否则返回expr2的值。如下示例是我今天遇到的问题1.从tcc表中查询...

求是科技 ⋅ 2016/06/30 ⋅ 0

MyBatis Error:BindingException Mapper method attempted to return null

错误描述: 在使用Mybatis的项目中有一个查询最新插入数据的需求。我写了如下SQL语句: 当表中有数据时,使用这个SQL查询是没有错误的,但是当表中没有数据则会出现如下错误: org.apache.i...

开源中国首席有志青年 ⋅ 01/14 ⋅ 0

mysql中的ifnull的使用

在mysql中有个ifnull的函数,可是当我用的时候,有条数据的字段全是空的。select if(字段名,值) from 表名 的时候 还是显示 null。这是怎么回事?

gflhx ⋅ 2013/03/15 ⋅ 2

mysql 多个字段拼接

MySQL的查询结果行字段拼接,可以用下面两个函数实现: 1. concat函数 [sql] view plain copy print? mysql> select concat('1','2','3') from test ; +---------------------+ | concat('1......

guanchaoguo ⋅ 2017/04/20 ⋅ 0

sql 高级(七)(null 值,isnull()、nvl()、ifnull()、coalesce)

SQL IS NULL 仅仅选取在 "Address" 列中带有 NULL 值的记录 select LastName,FirstName,Address FROM Persons where Address is null 结果集: LastName FirstName Address Adams John Cart......

萧小蚁 ⋅ 2015/08/07 ⋅ 0

MySql的基础知识之select

MySql的基础知识之select 一、select语法 1、 简单查询语句 select 字段 from 表名|视图 where 条件 order by 字段 desc|asc (|表示或,desc降序,asc升序,不写默认升序) 例如 : 2、 查询不...

幸运券发放 ⋅ 05/27 ⋅ 0

MYSQL中NULL值的运算

今天更新MYSQL数据库一个的表的某个字段,涉及到子查询 UPDATE t1SET points = (points - (SELECTsum(point)FROMt2WHEREt2_id NOT IN (1, 2, 3, 4))); 结果是求和的子查询得到的值是NULL,然...

外来物种 ⋅ 2015/11/13 ⋅ 0

MySQL(三)DQL之基础查询

1、语法 SELECT 要查询的东西 FROM 表名 ; 类似于Java中:System.out.println(要打印的东西); 2、特点 ①通过select查询完的结果,是一个虚拟的表格,不是真实存在。 ② 要查询的东西可以是...

leeqico ⋅ 05/19 ⋅ 0

day05 mysql基础

mysql: 本质是一个文件,按照一定的格式存储数据,可以对数据进行操作。 历史: 层次结构模型 数据库管理系统 IMS 网状结构模型 数据库管理系统 IDS 关系型结构 数据库管理系统 后关系型(对...

萧小蚁 ⋅ 2016/03/05 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

windows profesional 2017 build problem

.net framework .... https://stackoverflow.com/questions/43330915/could-not-load-file-or-assembly-microsoft-build-frameworkvs-2017...

机油战士 ⋅ 15分钟前 ⋅ 0

python3中报错的解决方法(长期更新)

1、ImportError: No module named ‘DjangoUeditor’ 出错原因:安装DjangoUeditor库适用于python2,需要下载适用python3的 下载地址:https://github.com/twz915/DjangoUeditor3 2、python3......

xiaoge2016 ⋅ 20分钟前 ⋅ 0

数据结构与算法之双向链表

一、双向链表 1.双向链表的结点结构 typedef struct DualNode{ ElemType data; struct DualNode *prior; // 前驱结点 struct DualNode *next; // 后继结点}DualNode, *DuL...

aibinxiao ⋅ 40分钟前 ⋅ 0

五大最核心的大数据技术

大数据技术有5个核心部分,数据采集、数据存储、数据清洗、数据挖掘、数据可视化。关于这5个部分,有哪些核心技术?这些技术有哪些潜在价值?看完今天的文章就知道了。 大数据学习群:7165810...

董黎明 ⋅ 41分钟前 ⋅ 0

PhpStorm 头部注释、类注释和函数注释的设置

首先,PhpStorm中文件、类、函数等注释的设置在:setting-》Editor-》FIle and Code Template-》Includes下设置即可,其中方法的默认是这样的: /**${PARAM_DOC}#if (${TYPE_HINT} != "v...

nsns ⋅ 41分钟前 ⋅ 0

spring.net AOP

http://www.springframework.net/doc-latest/reference/html/aop-quickstart.html https://www.cnblogs.com/wujy/archive/2013/04/06/3003120.html...

whoisliang ⋅ 46分钟前 ⋅ 0

【HAVENT原创】创建 Dockerfile 生成新的镜像,并发布到 DockerHub

注意:Win7 与 Win10 的版本存在差异,Win7 版本使用 Docker Quickstart Terminal 进入控制台,Win10下面直接用管理员权限打开控制台或者 PowerShell 即可;另外 Win7 下面只能访问 C盘,/ap...

HAVENT ⋅ 46分钟前 ⋅ 0

pom.xml出现web.xml is missing ...解决方案

提示信息应该能看懂。也就是缺少了web.xml文件,<failOnMissingWebXml>被设置成true了。 搜索了一下,Stack Overflow上的答案解决了问题,分享一下。 目前被顶次数最多的回答原文如下: This...

源哥L ⋅ 47分钟前 ⋅ 0

js时间戳与日期格式之间相互转换

1. 将时间戳转换成日期格式 1 2 3 4 5 6 7 8 9 10 11 12 13 14 // 简单的一句代码 var date = new Date(时间戳); //获取一个时间对象 /** 1. 下面是获取时间日期的方法,需要什么样的格式自己...

Jack088 ⋅ 52分钟前 ⋅ 0

web添加log4j

添加xml配置log4j.properties # Global logging configuration---root日志设置#log4j.rootLogger=info,dailyRollingFile,stdoutlog4j.rootLogger=debug,stdout,dailyRollingFile---......

黄柳淞 ⋅ 53分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部