2012-07-12 31 views
0

是否有任何技术可用于模拟Sybase 12.5中的表上的多个聚集索引?谢谢什么技术可以用来模拟表上的多个聚集索引?

+0

您对模拟它们有什么期望? '创建聚集索引'有什么问题? – 2012-07-12 08:48:21

+4

这是不可能的。聚簇索引是磁盘上数据的实际顺序。数据不能以两种不同的顺序存放在磁盘上,所以你不可能拥有多个聚簇索引。 – MatBailie 2012-07-12 08:50:14

回答

0

我不认为,你可以模拟多个聚集索引。因为当您在表上创建一个聚簇索引时,将根据聚簇索引列中的数据重新排列数据。在逻辑上,您不能按照另一列在另一个表中按其他顺序排列数据。你所能做的就是为其他列创建非聚簇索引

你可以做的其他事情是组合两个或多个列并创建聚簇索引。

0

我能想到的唯一近似值就是创建包含所有列的非聚集索引。这样,非聚集索引将包含所有的数据。

但是,要实现这一点,整个表必须适合施加在非聚集索引上的任何约束。 (例如,对于SQL Server,对某些列数据类型有限制,并且整个大小以字节为单位 - 可能类似的限制适用于任何产品)。

0

最好的办法是根据需要创建任意数量的表,然后在这些表上尝试不同的聚簇索引,这些索引可以模拟。然后,如果您的主要动机是检查哪个列可以创建更好的聚集索引,那么可以针对这些表运行查询以检查哪个表现更好。但是我建议你应该运行完整的工作量或所有你将在这个表上执行的查询,以便你能更好地了解哪些组合最适合你。

相关问题