Tengo la petición siguiente:¿Debo usar la palabra clave JOIN de sql para combinaciones complejas en varias tablas?
select *
from tbA A, tbB B, tbC C, tbD D
where
A.ID=B.ID and B.ID2= C.ID2 and A.ID=D.ID and C.ID3=D.ID3 and B.ID4=D.ID4
and
A.Foo='Foo'
He oído varias veces que esta sintaxis de la combinación se deprecia, y que debería utilizar la palabra clave 'JOIN' en su lugar.
¿Cómo puedo hacer eso en una combinación tan complicada (varias tablas unidas en varias columnas que pertenecen a diferentes tablas)? ¿Crees que esta mejor práctica todavía se aplica aquí?
Lo bueno de usar el formato ANSI es que la lógica de unión se separa de su lógica de filtrado. Hace que sea muy claro ver cómo se relacionan las tablas de un vistazo. – Barry
Sí, está en desuso.Y sí, deberías limpiar tu sql. – NotMe
@Chris: bueno, parece que el uso de esta sintaxis no está en desuso, mientras que el uso de * (para hacer uniones a la izquierda) es (se detalla en otra respuesta). re el SQL, lo acabo de escribir como un ejemplo – Brann