Sen*_*ful 11

是的,NULL值与空白/空值之间存在很大差异.

这是描述差异的一种资源.

时间myText IS NULL:

  • myText IS NOT NULL 评估为 FALSE
  • myText != ''求值为NULL(基本上与FALSE您编写的特定情况相同)

但是,你不应该养成对待它们的习惯,因为大多数时候它们会表现不同:例如:

假设你有一张桌子tbl:

id   text
1    NULL
2    
3    abc
Run Code Online (Sandbox Code Playgroud)

注意: 1包含一个NULL值,2包含一个空字符串('').

如果您运行以下查询:

SELECT * FROM tbl WHERE text != ''
Run Code Online (Sandbox Code Playgroud)

......它将返回记录3.

如果您运行以下查询:

SELECT * FROM tbl WHERE text IS NOT NULL
Run Code Online (Sandbox Code Playgroud)

...它将返回记录2和3.