Cha*_*adD 11 t-sql sql-server-2008
如果我知道列的值应始终在smallint数据类型允许的范围内,从数据完整性维护的角度来看,似乎我应该将数据存储在smallint列而不是int列中.
但是我想知道是否可以通过使用更少的字节来支付任何性能命中?
Stu*_*rth 11
较小的类型=磁盘上的存储更少,这导致更高效的索引.但是,除非处理大量数据,否则这些性能增益将是最小的; 此外,为了避免隐式转换(可能会抵消您看到的任何性能提升),您需要确保在引用该列时使用正确的类型(包括与参数的比较等).
无论哪种方式都可以洗.