Nullable 列 (例如 Nullable(String)) 会额外创建一个 UInt8 类型的独立列。每次用户操作 Nullable 列时,都必须处理这个附加列。这会占用额外的存储空间,并且几乎总会对性能产生负面影响。
为了避免使用 Nullable 列,可以考虑为该列设置默认值。例如,不要这样写:
为什么在 ClickHouse 中应避免使用 Nullable 列
Nullable 列 (例如 Nullable(String)) 会额外创建一个 UInt8 类型的独立列。每次用户操作 Nullable 列时,都必须处理这个附加列。这会占用额外的存储空间,并且几乎总会对性能产生负面影响。
为了避免使用 Nullable 列,可以考虑为该列设置默认值。例如,不要这样写: