MySQL中查询字段为空或者为null的方法

吾爱主题 阅读:159 2022-12-13 17:19:00 评论:0

MySQL查询字段为空或者为null

判断为null

?
1 select * from table where   column is null ;

不为null:

?
1 select * from table where   column is not null ;

判断为空或空格

?
1 select * from table where column = '' ;

注:不管是空还是其中有空格都可以显示出来。

补充:

  • 如果是excel导入mysql中创建临时表需要使用xls格式
  • 如果excel有字段为null,导入的时候转成字符 ‘null’

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

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

代码示例

有一用户表

?
1 2 3 4 5 6 7 8 9 10 11 12 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= '用户表' ;

查询用户信息:

?
1 2 3 4 5 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)的值

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/weixin_44688581/article/details/109988663

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容