将字符串数组字段作为索引,好还是坏?

我的直觉是将字符串(带有数组元素)字段设置为表上的索引将不利于性能(在表上执行的大部分操作是插入和更新 - 该表包含事务数据及其当前大小是大约20密耳的记录)。 该字符串扩展了一个包含4个数组元素的类型,其中并不总是填充它们。我需要证明为什么不将此字段设置为索引之一。我已经尝试寻找答案,阅读金伯利Tripps博客,在MSDN上进行最佳实践重新索引(其中只提到索引最好是数字,然后是字符串字段),等等。但是没有一个提到索引表上的字段这是一种数组类型。我可以给出什么理由来证明不对字符串数组字段进行索引。如果我的直觉完全错误并且索引在阵列字段上运行良好,为什么呢?     
已邀请:
备注或容器字段不能是AX中索引的一部分。 此外,由ntext,text或image数据类型组成的列不能指定为SQL Server中索引的列。     
假设你有一个扩展数据类型
ArrElement
,有3个额外的数组元素
ArrElement2
ArrElement3
ArrElement4
。在AX中创建具有
ArrElement
类型字段的索引将有效地在SQL Server中创建具有4个字段(ArrElement,ArrElement2,ArrElement3和ArrElement4 - 按此顺序)的索引。你不能改变索引中数组元素的顺序,但在我看来,如果它真的符合你的目的,那么拥有这样一个索引真的没有错。希望这能回答你的问题。     
正如@ 10p指出添加say5ѭ作为唯一字段,将创建所有数组元素的索引:Dimension,Dimension2_,Dimension3_(它们是SQL表字段的名称)。 此类索引的值取决于执行的查询。如果仅查询
Dimension[3]
,那么索引没有值,因为
Dimension[1]
Dimension[2]
是未知的。 这可以通过为每个数组元素创建索引来解决,例如: Dim1Idx:Dimension [1](可能附加更多字段) Dim2Idx:Dimension [2](可能附加更多字段) Dim3Idx:Dimension [3](可能附加更多字段) 可以使用索引字段上的组合框选择单个数组元素。 应根据增加的插入成本(如果更改数组值,则更新)对这些索引的值进行加权。     

要回复问题请先登录注册