MySQL查询字段为空(null)时设置默认值

1 摘要

根据项目需要,在数据库查询时,可能需要对查询结果进行封装,为了避免前端抛出空指针异常(NullPointException)对于没有值的字段也不能返回空,而应该赋一个默认值,在使用 MYSQL 作为数据库时,可使用 IFNULL() 方法来实现这一功能

2 代码示例

有一用户表

CREATE TABLE `user` (
  `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id 主键',
  `user_name` varchar(30) DEFAULT NULL COMMENT '用户名',
  `user_passcode` varchar(100) DEFAULT NULL COMMENT '登陆密码',
  `user_email` varchar(50) DEFAULT NULL COMMENT '邮箱',
  `user_insert_time` varchar(30) DEFAULT NULL COMMENT '用户注册时间',
  `user_update_time` varchar(30) DEFAULT NULL COMMENT '用户更新时间',
  `user_status` tinyint(4) DEFAULT '1' COMMENT '用户账号状态,1正常(默认),2禁止登陆',
  `user_version` int(10) unsigned DEFAULT '1' COMMENT '版本控制字段(默认1)',
  `user_del` tinyint(4) DEFAULT '0' COMMENT '逻辑删除字段,0正常(默认),1删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户表';

查询用户信息:

SELECT 
    IFNULL(u.id,0), IFNULL(u.user_name,''), IFNULL(u.user_passcode,''), 
    IFNULL(u.user_email,'')
FROM `user` u
LIMIT 0,10

IFNULL(exp1,exp2): 当表达式1(exp1) 值为空(null)时,方法返回表达式2(exp2)的值

3 参考文档

MySQL IFNULL() Function

个人公众号:404Code,记录半个互联网人的技术与思考,感兴趣的可以关注.
404Code

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值