sql - 未明确说明时选择不包括空值
问题描述
当我使用
Select Distinct Brand_ID
from db.ABC
WHERE
Brand_ID <> 800
我得到返回的输出:
+----------+
| Brand_ID |
+----------+
| 100 |
| 200 |
| 300 |
| 400 |
| 500 |
| 600 |
| 700 |
| 900 |
+----------+
但是,该列确实包含存在的 NULL 值。我需要更新我的选择语句以明确地说:
Select Distinct Brand_ID
from db.ABC
WHERE
Brand_ID <> 800 OR Brand_ID IS NULL
要获得正确的输出:
+----------+
| Brand_ID |
+----------+
| NULL |
| 100 |
| 200 |
| 300 |
| 400 |
| 500 |
| 600 |
| 700 |
| 900 |
+----------+
为什么NULL
在没有明确说明的情况下会删除该值?
解决方案
SQLNULL
表示
我不知道
所以NULL
不是一个值。
推荐阅读
- javascript - 减少 React-Native 图像资产大小
- javascript - 使用循环 javascript 创建选择选项
- asp.net-mvc - 将部分视图 select2 控件值传递给父视图控制器
- python - ValueError:时间数据“无”与格式“%Y-%m-%dT%H:%M:%S.%f”不匹配
- html - 每次都强制浏览器链接到新的 pdf 副本?
- r - 将相同的行号分配给R中另一列中的重复值
- android - RecyclerView 中的项目确实保留在 android 中
- javascript - 使用 JQuery 从数组上的单选按钮获取单个值
- python - Keras 3类图像识别概率输出?
- css - Angular9/Ionic 5 Ion-Split-pane 问题