问题现象:

今天在项目中思考了一个问题:如何在sql中判断一个字段是否为 null值 , 是否为 空串 呢?

问题分析:

需要注意的是: null值 和 空串 并不是同一个概念!!!!!!

null值 就是这个字段没有赋值,也就是java中常说的 null ;

而 空串 是指这个字段有赋值, 只是该值是一个 空字符串, 也就是java中常说的 空串 .

既然明白了 这两者的区别之后,那就要给大家介绍一下,如何在sql中判断某个字段 时候为 null 或 空串 了!

在postgresql数据库中, 我们都知道 null值 的字段会显示为 (NULL) ; 而 空串 的字段 则显示为空白(双击该值后,会发现没有任何内容);

1.判断 null值:

在sql中可以通过 IS NUll 和 IS NOT NULL 来判断一个字段的值是否为 null值;

解决方法:

1.判断 null值

Select * From table Where IS NULL(id);  或  Select   *   From   table Where id IS NULL; //查询id为 null值 的记录

Select * From table Where IS NOT NULL(id);  或  Select   *   From   table Where id IS NOT NULL; //查询id不为 null值 的记录

2.判断 空串

Select * From table Where id = '';  //查询id为 空串 的记录

Select * From table Where id <> ''  或  Select * From table Where id != ''  //查询id不为 空串 的记录

3.判断 空串和null(重点)

Select * From table Where length(id) >0;  //查询id不为 空串 也不为 null值 的记录

Select * From table Where length(id) <=0;  //查询id为 空串 或 null值 的记录

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐