我用SQL SERVER 2012的datetime2(7)作为聚集索引,问题情况如下:
1、因为该值为系统默认的"sysdatetime",所以只要产生新数据,信息一定为正序添加。
2、查询总是为倒序排列,因为用户总是想让最新的信息显示在最上面。
3、聚集索引最拍的是向中间插入一条数据,因为这样会影响整个表的物理排序,这样会导致整个表进行聚集索引重新排序。我看网上说这种情况的写入效率最差。
我想问的是:如果我将聚集索引设为正序asc,且数据为正序增加,是否这样的情况,写效率最高?
而如果我将此时间聚集索引设为倒序,然而数据位正序增加,那么是否每增加一条,数据库都要把新数据插入到原来数据的最底下,导致整个数据表都要位移?从而导致整个表的写入效率大大降低?
还是设置的索引顺序无所谓?
整个问题涉及数据库的堆栈原理问题,所以请大家讨论一下,支支招。
谢谢!
------解决方案--------------------

------解决方案--------------------
那请教:因为我通常都是desc查询的,那是否我可以将此聚集索引设为desc呢?设为desc,是否会影响写入效率呢?
谢谢
------解决方案--------------------
其实,聚集索引,asc还是desc,为什么查询的效率是一样的呢
这个就像,比如表中存储的数据,就像是一本书,那么asc的时候,就是从第一页开始,往后翻,而desc的时候,只需要从最后一页往前翻。
所以,效率是一样的。