【发布时间】:2015-06-13 17:26:38
【问题描述】:
我有一个非常大的表,大多数查询使用 WHERE 子句过滤包含 ID 号的列。不幸的是,这个 ID 号存储为 nvarchar(255)。重新转换为 bigint(它不适合 int)有助于查询性能吗?
注意 - 此 ID 值不是唯一的,因此无法分配主键。这是否意味着我不能在这里使用聚集索引?该表当前包含 0 个聚集索引。
【问题讨论】:
-
“重铸为 bigint”是什么意思?在运行时或(希望...)通过更改表定义?
-
如果字段只包含数值,是,请更改表定义以使该字段成为适当的数字类型。你应该总是choose the correct data type for your fields
-
Martin Smith,我的意思是更改表定义并更新所有现有值
标签: sql-server