我正在将数据从一个数据库迁移到另一个数据库。
我有一个数字列。其中包含一些值、一些 0 和一些空值。我的直觉是将所有的 0 转换为 NULL。这将存储一个可选的、用户提供的号码。
有什么理由不将所有 0 转换为 NULL?
我正在将数据从一个数据库迁移到另一个数据库。
我有一个数字列。其中包含一些值、一些 0 和一些空值。我的直觉是将所有的 0 转换为 NULL。这将存储一个可选的、用户提供的号码。
有什么理由不将所有 0 转换为 NULL?
不将零转换为 null 的一个原因是它们在数学上意味着不同的东西。
因此,如果这些是用于数字函数的数字,那么您需要根据应用程序要求(您没有给出)使用 NULL 和零。
也许如果你给出了一些数字代表什么的指示,你可能会得到一个有用的答案。
索引 NULL存在问题(通常它们不是)。
如果您的意思是 0,请使用 0。改用 NULL 会更改您的排序顺序并影响算术(和比较)。NULL 用于表示没有值。将它们用作 0(这是一个值)的替代品是推动您的设计而不是......设计的微优化的一个很好的例子。