Если новый столбец, который вы добавляете в индекс, находится в конце списка столбцов - другими словами, если список столбцов старого индекса является префиксом списка столбцов нового индекса - тогда строки, которые сортируются по старым столбцам, по-прежнему сортируются по новым столбцам. В Sybase SQL Server и, возможно, в более старых версиях Microsoft SQL Server была опция with sorted_data
, позволяющая вам объявить, что строки уже отсортированы. Но на MSSQL 2008 R2 это никак не сказывается; опция принята, но молча игнорируется. В любом случае, я думаю, что эта опция была в основном полезна для кластерных индексов.
Другие упоминали with drop_existing
, что звучит замечательно, но только для более дорогих версий MSSQL.