我有一张像这样的桌子"bla":
[id] [name] [fk]
1 test 4
2 foo 5
3 bar NULL
Run Code Online (Sandbox Code Playgroud)
如果我做的SQL查询
SELECT * FROM bla WHERE fk <> 4
Run Code Online (Sandbox Code Playgroud)
我只得到id为2的记录.我没有得到id为3的记录,其中fk为null.我以为是NULL!= 4.似乎这是错误的.
为什么会这样?
Mat*_*Mat 30
NULL没有比较等于任何东西.您需要显式接受空值:
where fk <> 4 or fk is null;
Run Code Online (Sandbox Code Playgroud)
有关处理的更多信息,请参见使用NULLNULL.
| 归档时间: |
|
| 查看次数: |
28391 次 |
| 最近记录: |