【发布时间】:2010-12-26 16:17:24
【问题描述】:
考虑一个表,它的工作是存储对象的评级。这里感兴趣的列是名为 RATING 的列。要存储的值的有效范围是:
- 1
- 0
- -1
首先想到的是存储为 tinyint smallint。这将只存储一个字节每行两个字节。鉴于 tinyint 的范围是 0 到 255 smallint 的范围是 -32768 到 32767,它是否适合这里?还有其他更合适的数据类型吗?对于表和数据库的预期大小,占用的空间微不足道。用户界面将负责确保通过枚举选择这三个值。
问题:您能否建议一个更小的存储空间或任何巧妙的设置来存储这三个值之一而不牺牲任何易于理解?
其他注意事项:
- 存储空间不是一个非常大的问题
- 此值将相加得到总评分
- 这可能是微优化的情况
- SQL Server 2008
【问题讨论】:
标签: sql sql-server tsql types