Decir que tengo una tabla:¿Utilizará SQL Server un índice compuesto cuando solo una columna está en la cláusula WHERE?
CREATE TABLE Users (
Id INT IDENTITY (1, 1),
FirstName VARCHAR(40),
LastName VARCHAR(40)
)
consultas son por lo general en FirstName o LastName , sino también en FirstNameyApellido.
Si creo un índice no agrupado en FirstName y otro en Apellido, entonces mis dos primeras consultas son atendidas. Aparentemente, SQL Server usará index intersection para la otra consulta.
Alternativamente, si tengo en indexees (Nombre) y en (apellido, nombre), puede/no utilizar SQL Server el segundo índice de consultas en un solo Apellido, así como las consultas en ambos?
¿SQL Server almacena partes de índice compuesto de izquierda a derecha o de derecha a izquierda? En otras palabras: ¿construirá la clave como Apellido NombrePrimario o Nombre Apellido? ¿O es libre de elegir uno arbitrariamente?
Quiero decir: al construir la clave para poner en el árbol B, está la clave para un índice compuesto (A, B, C) almacenado como (A, B, C) o (C, B, A), ¿o depende de SQL Server elegir uno arbitrariamente? –
Creo que lo que él quiere decir es cómo se construye la clave. El indicador está de izquierda a derecha, exactamente como usted define la clave. Y es por eso que no se puede usar para buscar el apellido. –