ber*_*d_k 0 null oracle sql-server
将 x 视为包含 null、0、1 的列。只有不到 1% 的行包含 1。0 和 Null 之间没有逻辑差异。
坚持在这里使用 isnull 而不是 NVL 是个好主意吗(性能)?
如果您纯粹是从性能角度来看哪个更好……我只会测试您的两种方法,看看哪种方法对您的数据更快。
...但由于无论如何您只有三种状态,并且这是在 where 子句中进行的,因此检查它是否不是第三种情况可能会更快,然后您就不需要 NVL 测试了:
column <> 1
Run Code Online (Sandbox Code Playgroud)
或者,如果真的没有区别(并且 NULL 不是“我们不知道,所以我们出于所有实际目的将它视为 0,但我们偶尔需要知道它何时未知”的情况) ),只需更新表并将其设置为 0,即当前为 NULL。(并调整 NULL 中的任何内容)
归档时间: |
|
查看次数: |
1311 次 |
最近记录: |