Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   MS SQL Server (https://www.clubdelphi.com/foros/forumdisplay.php?f=23)
-   -   Diferencia entre Join e "igualar en el where"?? (https://www.clubdelphi.com/foros/showthread.php?t=30080)

AFilth 08-02-2006 15:11:19

Diferencia entre Join e "igualar en el where"??
 
Hola, esta es una pregunta puramente informativa. Que ventajas o que diferencias hay entre hacer una unión de 2 tablas en el JOIN mediante
"Tabla1 join Tabla2 on Tabla1.x = Tabla2.y" o hacerlo como "from Tabla1, Tabla2 where Tabla1.x = Tabla2.y"
Un saludo.

fabianbbg 08-02-2006 15:47:11

Para el motor de BD ninguna.. Analiza la consulta y "decide" hacer el Join de la mejor manera posible segun su criterio..

Saludos..

Neftali [Germán.Estévez] 08-02-2006 15:51:02

En SQL Server (y otros SGBD's un poco serios) seguramente ninguna, debido a que el optimizador del SGBD convertirá la unión por WHERE en una JOIN.

Haz la prueba con las dos consulta y revisa los planes de ejecución an ambos casos; Verás que son iguales.

AFilth 08-02-2006 17:44:24

ok, era lo q pensaba, q el optimizador de consultas q incorpora el sqlserver se encargaría de hacerlo de la manera más óptima, pero bueno, así me aseguraba de que estaba en lo cierto :)

Un saludo y gracias por aclararme la duda.

__hector 08-02-2006 21:30:49

Tambien tiene que ver algo con los estandares. En los estandares anteriores de SQL (creo que desde el SQL92 hacia atras) no existian las clausulas JOIN (inner, outer, left, right), sino que el cruce entre los registros se hacia con operadores
(=, *=, =*, etc.)

Se recomienda siempre el uso de la clausula JOIN vs. los operadores.


La franja horaria es GMT +2. Ahora son las 20:05:22.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi