未明确说明时选择不包括空值

Gre*_*ima 2 sql sql-server

我用的时候

Select Distinct Brand_ID
from db.ABC
WHERE
Brand_ID <> 800
Run Code Online (Sandbox Code Playgroud)

我得到了返回的输出:

+----------+
| Brand_ID |
+----------+
|      100 |
|      200 |
|      300 |
|      400 |
|      500 |
|      600 |
|      700 |
|      900 |
+----------+
Run Code Online (Sandbox Code Playgroud)

但是,该列确实包含NULL值,它们存在.我需要更新我的select语句以明确说:

Select Distinct Brand_ID
from db.ABC
WHERE
Brand_ID <> 800 OR Brand_ID IS NULL
Run Code Online (Sandbox Code Playgroud)

要获得正确的输出:

+----------+
| Brand_ID |
+----------+
| NULL     |
| 100      |
| 200      |
| 300      |
| 400      |
| 500      |
| 600      |
| 700      |
| 900      |
+----------+
Run Code Online (Sandbox Code Playgroud)

为什么NULL在未明确说明时会删除该值?

D-S*_*hih 5

SQL NULL意味着

我不知道

所以NULL不是一个价值.