MSSQL sqlserver 使用sql脚本为计算列创建索引的方法分享


摘要:
下文将分享使用sql脚本为计算列创建索引的方法及注意事项,如下所示:
实验环境:sql server 2008 R2


在sqlserver的表中,有些列是由非计算列组合而成的列,我们称这些列为计算列。
例:

/*创建表
表中keyIdC列为一个计算列由keyIdA和keyIdB相加而成
*/
create table test 
(keyIdA int ,
 keyIdB int,
 keyIdC as keyIdA+keyIdB
)
/*
当我们查询条件中包含keyIdC时,此时我们需要为计算列keyIdC创建一个索引来达到
快速检索数据的目的,如下:
*/
create Index test_x 
  on test(c)


计算列索引创建注意事项:
1.计算列中所涉及的函数须同表具有相同的所有者;
2.计算列须具有确定性:输入相同的参数无论何时都必须得到相同的结果;
3.计算列须返回确定的数据类型和相同精度要求;
4.定义计算列时,须将ANSI_NULLS选项设置为ON.