sql-server - SQL Server:索引 varchar 与可为空的位性能
问题描述
我设计了一个带有可空位列的数据库来存储正/负/未测试的测试结果,与 1/0/null 具有非常明显的相关性。这对我来说似乎很好,我翻译了应用程序中的值,一切都很好。
我的老板突然决定这不好,我们应该使用FK。我提到避免无关的 FK 和表是我选择它的部分原因,他认为使用 avarchar
并存储整个域值会更好,因为“至少它是可索引的”和“空间很便宜”。
varchar
如果您在任何地方都做出这样的决定,占用更多空间意味着花费更多传输时间,但除此之外,索引和可空值之间是否存在性能差异bit
?如果有的话,我怀疑可空位会更快,但我怀疑其他人在这里比我有更多的经验要说。
有人权衡这个吗?我的老板在这方面是正确的吗?
如果重要的话,该软件在 C# 中通过 EF 通过 WCF 数据服务来访问 SQL Server。
解决方案
推荐阅读
- c - C 中无法解释的溢出
- sql - 如何在 SQL 中实现双向排序?
- python - 满足条件后如何向多个客户端发送响应?
- silverstripe - Silverstripe - 全新安装无安装页面
- java - Android java - 为 2 个或更多视图分页器制作 1 个 ImageAdapter(目前为 2 个视图分页器提供 2 个适配器)
- r - Windows 上 R 中并行计算的输出
- java - 通过 ModelMapper 映射时将 LocalDateTime.now() 的值设置为两个字段
- r - 如何将数据框随机拆分为在主题和项目上平衡的两半
- dns - 无法 ping 桉树云中的 DNS 服务器
- python - 用双轴在两点之间画线