mysql - 如何在长度mysql中捕获NULL值?
问题描述
我有这样的桌子
Table : test
column1 | column2
aaaaaa | 113323
(NULL) | 2331233
2 | 899999
99999 | 222222
abc | 13123
jul | 98282
我试图找到 column1 中单词的长度小于 4,所以我使用了这个查询。
select * from test where length(column1) < '4'
我只得到这个:
column1 | column2
abc | 13123
jul | 98282
2 | 899999
为什么我的查询没有捕捉到 NULL 值?我的查询有问题吗?我期待的是这样
column1 | column2
(NULL) | 2331233
abc | 13123
jul | 98282
2 | 899999
我有另一种解决方案,例如使用where column1 is null
但它不起作用
解决方案
NULL
不是字符串,因此您无法与之比较length
。
尝试:
select * from test where length(column1) < '4' or column1 is NULL;
因此,如果该值(NULL)
确实为 null,它将被匹配,但如果它是一些奇怪/修改过的版本而不是真正的 MySql NULL
,它将不会被匹配
推荐阅读
- java - Node.js 应用程序可以在 Springboot 可执行 jar 类上运行并稍后调用方法吗?
- angular - 将 FormArray 动态添加到 FormGroup 不起作用 Angular
- python - 无法使用 Python selenium 获取行数
- c# - 没有 MediaTypeFormatter 可用于从 asp.net mvc webapi 中媒体类型为“text/html”的内容中读取“IEnumerable`1”类型的对象
- google-bigquery - BigQuery 提取表架构
- batch-file - 如何通过管理员在用户登录时自动运行批处理文件
- maxima - 用变量填充数组(最大值)
- java - 单击地图上的更改标记图标
- android - 如何在 Kotlin 中将 listView 转换为 RecyclerView
- javascript - 具有多个轴的 Highcharts 时间线图