我希望在可空列上搜索数据库表.有时,我要搜索的值本身就是 NULL.由于 Null 等于没有,即使是 NULL,说
I wish to search a database table on a nullable column. Sometimes the value I'm search for is itself NULL. Since Null is equal to nothing, even NULL, saying
where MYCOLUMN=SEARCHVALUE
会失败.现在我不得不求助于
will fail. Right now I have to resort to
where ((MYCOLUMN=SEARCHVALUE) OR (MYCOLUMN is NULL and SEARCHVALUE is NULL))
有没有更简单的说法?
(如果重要的话,我正在使用 Oracle)
(I'm using Oracle if that matters)
你可以做 IsNull 或 NVL 的事情,但这只会让引擎做更多的工作.您将调用函数进行列转换,然后必须比较结果.
You can do the IsNull or NVL stuff, but it's just going to make the engine do more work. You'll be calling functions to do column conversions which then have to have the results compared.
用你所拥有的
where ((MYCOLUMN=SEARCHVALUE) OR (MYCOLUMN is NULL and SEARCHVALUE is NULL))
这篇关于确定 Oracle null == null的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!