网站首页 > 知识剖析 正文
项目中经常遇到判断 varchar 类型字段是否为空,包含空字符串('') 和null ,对其处理不当就会坑你一把,弄的你一点脾气都没有,应小伙伴儿们要求,这里写篇手记,对空字段的处理做下说明。
数据库,新建表 a 结构、数据:
-- 1.执行结果是什么?
select * from a where length(name)=0;
-- 2.执行结果是什么?
select * from a where name is null ;
看到这,是不是明白点了,null比较特殊,使用函数对其操作,只会返回null
由此得出结论:
select length(null) ; ==> null
select length(’’); ==> 0
常见写法:
where column1 is null or length(column1)=0;
或者
where ifnull(column1,'')='';
这两种写法有问题,where条件中使用函数当条件会导致索引失效!
性能最好的写法就是 column1 is null or column1 =''
猜你喜欢
- 2024-12-04 从零开始学SQL数据分析,SQL数据清洗
- 2024-12-04 C#中使用FreeSql分表查询的实现及bug
- 2024-12-04 SQL 基础学习插入数据(十三)
- 2024-12-04 利用VBA+SQL查询Excel工作表数据(条件查询)
- 2024-12-04 初学者最热门和棘手的10个T-SQL问题
- 2024-12-04 神奇的 SQL 之 联表细节 → MySQL JOIN 的执行过程
- 2024-12-04 数据库基础 数据查询语言 初学者一定要掌握这些SQL查询语句
- 2024-12-04 20个数据分析师必知必会的SQL查询语句
- 2024-12-04 SQL查询排序如何将null值排到最后
- 2024-12-04 一文讲懂SQL条件语句 IF函数
- 最近发表
-
- 表格存储 SQL 查询多元索引(表格存储 sql 查询多元索引的方法)
- 数据库教程-SQL Server多条件模糊查询
- Twitch宣布放弃Flash并逐步转型至HTML5平台
- 移动平台最强播放器MX Player:终于支持安卓5.0了!
- win10 NFS+黑群晖远程加载管理Windows文件夹(读写NTFS格式+高清播放器)
- Android端VLC 3.3版本发布,重新设计播放器界面
- 不仅仅被苹果封杀!Youtube宣布迁移Flash
- 揭开网站背后的魔法:B/S系统原来这么简单!
- Adobe Animate (An) 2020网页设计软件下载和安装教程
- Adobe发布“巨量”安全更新:遏制Flash“祸害”Linux
- 标签列表
-
- xml (46)
- css animation (57)
- array_slice (60)
- htmlspecialchars (54)
- position: absolute (54)
- datediff函数 (47)
- array_pop (49)
- jsmap (52)
- toggleclass (43)
- console.time (63)
- .sql (41)
- ahref (40)
- js json.parse (59)
- html复选框 (60)
- css 透明 (44)
- css 颜色 (47)
- php replace (41)
- css nth-child (48)
- min-height (40)
- xml schema (44)
- css 最后一个元素 (46)
- location.origin (44)
- table border (49)
- html tr (40)
- video controls (49)