Q1: ¿Vale la pena crear índices para columnas de clave externa en una base de datos de SQL Server?Índices de SQL Server: ¿qué columnas incluir en el índice?
Q2: Si tengo dos tablas relacionadas en una base de datos SQL Server y quiero crear un índice en la columna clave externa para mejorar el rendimiento, ¿qué columnas debo incluir en el índice y qué tipo de índice? es el más adecuado?
Por ejemplo ...
Table1
Table1ID int (clave principal)
Table2
Table2ID int (clave primaria)
Table1ID int (clave externa)
.. ¿Crearía un índice para Table2 solo con Table1ID o necesito incluir también la clave primaria (Table2ID).
Q3: Si extiendo el ejemplo para incluir una tercera tabla que está relacionada con Table1 y Table2, ¿creo un índice para cada columna o un índice con ambas columnas?
Table3
int Table3ID (clave primaria)
Table1ID int (clave externa)
Table2ID int (clave externa)
Gracias por la respuesta @Mitch Wheat, ¿qué tipo de índice debo crear (en clúster o sin clúster)? ¿Es suficiente CREAR CLUSTERED INDEX IX_Table2_Table1ID ON Table2 (Table1ID) o debería agregar alguna opción? – johna
generalmente, todos los índices de FK no estarán agrupados. –