consulta sobre performance

21/04/2005 - 23:01 por Pablo P | Informe spam
Hola,

Tengo dos tablas A y B, hay registros en A que no tienen porque estar
relacionados con la tabla B, ahora que es mas performance:

1) Hacer un left join con las dos tablas

2) Hacer una consulta con not exist, es decir, con los que no existan en B y
luego una union con una consulta exist.

muchas gracias

Preguntas similare

Leer las respuestas

#1 Ricardo Passians
22/04/2005 - 01:15 | Informe spam
Aunque pueda depender de las distribucion de los datos, normalmente la
opción 1 deberá ser más eficiente. El left join está hecho para eso
precisamente.


"Pablo P" wrote in message
news:
Hola,

Tengo dos tablas A y B, hay registros en A que no tienen porque estar
relacionados con la tabla B, ahora que es mas performance:

1) Hacer un left join con las dos tablas

2) Hacer una consulta con not exist, es decir, con los que no existan en B


y
luego una union con una consulta exist.

muchas gracias
Respuesta Responder a este mensaje
#2 Tinoco
22/04/2005 - 01:24 | Informe spam
Hola Pablo,

Normalmente lo mejor es utilizar INNER o LEFT, son mejores en performance y
es una relacion entre dos tablas y si es posible la relacion va por indices.

De todas formas la velocidad la determina la consulta y la estructura de la
tabla (Indices y llaves foraneas)..

Hermilson Tinoco

"Pablo P" wrote:

Hola,

Tengo dos tablas A y B, hay registros en A que no tienen porque estar
relacionados con la tabla B, ahora que es mas performance:

1) Hacer un left join con las dos tablas

2) Hacer una consulta con not exist, es decir, con los que no existan en B y
luego una union con una consulta exist.

muchas gracias
Respuesta Responder a este mensaje
#3 Maxi
22/04/2005 - 04:45 | Informe spam
Hola, yo siempe recomiendo mirar los planes de ejecucion y comparar.

De todas maneras a mi me gusta mucho mas usar LEFT JOIN, me parece mas
natural para SQLSERVER

"Pablo P" escribió en el mensaje
news:
Hola,

Tengo dos tablas A y B, hay registros en A que no tienen porque estar
relacionados con la tabla B, ahora que es mas performance:

1) Hacer un left join con las dos tablas

2) Hacer una consulta con not exist, es decir, con los que no existan en B
y
luego una union con una consulta exist.

muchas gracias
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida