Hints
Hints
Hints
1. Join Hints:
HASH JOIN: Se utiliza cuando se quiere forzar el uso del HASH JOIN entre dos tablas.
SELECT title_id,
pub_name,
title
FROM
Titles
INNER HASH JOIN Publishers
ON Titles.pub_id = Publishers.pub_id
MERGE JOIN: Se utiliza cuando se quiere forzar el uso del MERGE JOIN entre dos tablas.
SELECT title_id,
pub_name,
title
FROM
Titles
INNER MERGE JOIN Publishers
ON Titles.pub_id = Publishers.pub_id
LOOP JOIN: Se utiliza cuando se quiere forzar el uso del LOOP JOIN entre dos tablas.
SELECT title_id,
pub_name,
title
FROM
Titles
INNER LOOP JOIN Publishers
ON Titles.pub_id = Publishers.pub_id
Generalmente no deberamos usar estos Hints, pero si por alguna razn el motor no est generando
el plan de ejecucin ms ptimo, entonces es vlida esta metodologa. Pero hay que tener
CUIDADO en usarlo.
Pgina 1 de 3
2. Index Hints:
Este tipo de Hints, se utiliza cuando queremos forzar el uso de un ndice en particular, para
optimizar la consulta. El plan de ejecucin generado por el SQL Server suele ser el ms ptimo,
pero en algunos casos excepcionales, no. Al igual que con los Join Hints, hay que tener cuidado a la
hora de usarlos.
Forzar el uso del Clustered Index: Poniendo como ID de INDEX el valor 1. En caso que no
exista, tira error.
SELECT *
FROM
Authors WITH (INDEX(1))
Forzar el uso de un Non Clustered Index: Poniendo como ID de INDEX el nombre del
ndice.
SELECT *
FROM
Authors WITH (INDEX(nombre_del_indice))
Pgina 2 de 3
3. Lock Hints:
Por lejos, los ms usados. Este tipo de Hints especifican que tipo de lockeo se debe efectuar en una
operacin. Existen varios Hints de este tipo, pero los ms usados son NOLOCK y ROWLOCK.
Pgina 3 de 3