亲宝软件园·资讯

展开

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

菜鸟要成长zz 人气:0

MySQL查询字段为空或者为null

判断为null

select * from table where  column is null;

不为null:

select * from table where  column is not null;

判断为空或空格

select * from table where column ='';

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

补充:

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

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

代码示例

有一用户表

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)的值

总结

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

加载全部内容

相关教程
猜你喜欢
用户评论