在索引/查询等方面,其中一个的性能优于另一个吗?数据库字段的比较/性能为int vs char(1)
例如声明列 活跃CHAR(1)以 'Y'/ 'N' 值 VS 与价值观IS_ACTIVE TINYINT 1/0
有传言说人们似乎更喜欢使用CHAR(1) ,而大多数地方我倾向于宣布他们为tinyint/int不是最少的,因为它易于使用/类型
任何真正的性能比较呢? 我记得像甲骨文二进制值索引(位图索引或一些这样的) - 有什么类似的sql2005/sql2008/...?
更新 - 在回应一些下面的意见,性能会在索引查询/更新定义的,存储是无关紧要的考虑是够便宜
语义太不相关!
位域无法被索引......因此无法用于查询....因此tinyint/smallint/int/bigint列也会出现语义问题! – Kumar 2009-09-02 20:18:56
你*可以*索引位字段,它只是没有什么好处,因为只有两个值!如果您将两个值存储在其他某种列中并对其进行索引,那么该索引执行的效果会很差。 – richardtallent 2009-09-03 08:12:57
更多信息: http:// stackoverflow。com/questions/231125/should-i-index-a-bit-field-in-sql-server – richardtallent 2009-09-03 08:13:33