INF: Argumentos de búsqueda que determinar el uso de la página de distribución

Seleccione idioma Seleccione idioma
Id. de artículo: 169642 - Ver los productos a los que se aplica este artículo
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Expandir todo | Contraer todo

Resumen

Determinar la existencia de índices útiles para resolver una consulta, SQL Server busca los argumentos de búsqueda en la consulta. Argumentos de búsqueda son los argumentos en la cláusula WHERE de una consulta que ayudan a especificar una condición para restringir el conjunto de resultados devuelto por la consulta. Es necesario que los argumentos en la cláusula WHERE son del formulario "columna operador constante". Si existen índices en estas columnas, el optimizador de SQL Server puede estimar la selectividad del índice y, por lo tanto, decidir si desea utilizarla o no.

Se desea que la estimación de optimizador buscar selectividad del argumento basada en la información de distribución disponible en la página de distribución. Otros métodos para determinar la selectividad de índice de un argumento de búsqueda incluyen el uso las densidades de índice y densidad mágica. Densidad mágico es una estimación de la selectividad del argumento de búsqueda que puede utilizarse cuando no se puede utilizar densidad ni estadísticas en la página de distribución. Estimaciones de 10 por ciento de la coincidencia de las filas de una comparación de igualdad, 25 por ciento para un entre comparación y 33 por ciento para mayor, menor, mayor o igual a y menor o igual que las comparaciones.

Más información

Puntuación de un índice es el proceso de estimación de la utilidad del índice para el argumento de búsqueda en la cláusula WHERE. Pasos de distribución se mantienen sólo para la primera columna del índice especificado. Un argumento de búsqueda válida es del formulario "columna operador constante". Se puede utilizar cualquier operador es válido en la columna especificada. Argumentos de búsqueda no válida pueden impedir que se utiliza el índice.

Para permitir que el optimizador índice puntuación para un argumento de búsqueda basado en la página de distribución, las reglas siguientes en argumentos de búsqueda pueden ser útiles:
  1. Evitar los operadores de desigualdad (como en la columna! = constante). Esto no es un argumento de búsqueda válida y no permite que el optimizador evaluar la utilidad del índice en esta columna, si hay alguno.

  2. Reducir siempre que sea posible el uso de variables locales (como en la columna = variable local @), a menos que el valor de la variable @ local se puede determinar antes de la ejecución. Esto es porque el valor de la variable @ local no se conoce en tiempo de compilación. Esto puede producir para el optimizador mediante densidades mágicas o densidad del índice. Cuando el valor no está disponible, no se comprueba de pasos de distribución. La variable local se utilizará como un argumento de búsqueda válida si se pasa como parámetro a un procedimiento almacenado.
  3. Intente evitar realizar operaciones en la columna (como en la columna * 100 = constante). No se trata como un argumento de búsqueda válida. En su lugar, intente volver a escribir la misma expresión (como en la columna de formulario = constante/100).
  4. Para las subconsultas como ".. .WHERE columna operador (Seleccionar columna de tabla)" el optimizador no podrá utilizar los pasos de distribución porque el valor de la expresión constante no se conoce hasta que se ejecuta la consulta.
  5. Para las cláusulas de combinación, no puede utilizarse una página de distribución (a diferencia de un argumento de búsqueda).
Para obtener más detalles acerca de escribir consultas eficaces, consulte los artículos siguientes en Microsoft Knowledge Base:
110352: INF: optimizar el rendimiento de Microsoft SQL Server

46434: INF: escribir consultas eficaces y procedimientos almacenados

Propiedades

Id. de artículo: 169642 - Última revisión: viernes, 24 de enero de 2014 - Versión: 3.0
La información de este artículo se refiere a:
  • Microsoft SQL Server 6.0 Standard Edition
  • Microsoft SQL Server 6.5 Standard Edition
Palabras clave: 
kbnosurvey kbarchive kbmt kbinfo kbusage KB169642 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 169642

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com