Realmente no importa, pero ¿el DateTime realmente garantiza ser único? EVITARÍA poner un índice agrupado solo en DateTime. Usaría una IDENTIDAD INT o IDENTIDAD BIGINT en su lugar, y colocaría un índice regular no agrupado en DateTime (ya que realmente no se garantiza que sea único ......)
Marc
PS: al igual que una clave principal, el consenso general sobre lo que debe ser una clave agrupada es:
- única (de lo contrario SQL Server "uniquify" mediante la adición de un grupo 4- byte uniqueifier a él)
- como estrecha posible
- estática (nunca cambian)
- vez aumentar
La columna (s) que componen la clave agrupada (incluido el uniqueifier 4 bytes) se añaden a CADA ENTRADA en CADA índice no agrupado - por lo que desea mantener esos lo más delgado posible.
PS 2: las claves de agrupamiento se agregan a cada índice no agrupado porque esa es la forma en que SQL Server recuperará las filas enteras una vez que se encuentra el valor de búsqueda en el índice no agrupado. Es la "ubicación" de la fila en la base de datos, por así decirlo. Por lo tanto, debe ser único y estrecho.
Entonces, ¿un índice agrupado necesita ser único? – Eyvind
Si es * NOT * único, SQL Server agregará automágicamente un "singularizador" de 4 bytes; si es posible, ¡trate de evitar eso! –
Gracias, no lo sabía. Entonces, dado que la tabla en cuestión tiene un PK que es un identificador único, ¿sería mejor crear el índice agrupado en el campo de fecha y hora Y el PK? – Eyvind