Relacionado con el tema: http://es.wikipedia.org/wiki/Join
Específicamente "notación implícita" El 17 de noviembre de 2008 6:08, Javier Chávez B. <[EMAIL PROTECTED]>escribió: > 2008/11/17 Alvaro Herrera <[EMAIL PROTECTED]>: > > ALFONSO REYES escribió: > >> > >> Estimados yo soy nuevo con la base postgres, pero en oracle e manejado > >> grandes volumenes, y les comento que la clausula "EXISTS"como "NO > >> EXISTS" para subconsultas es mucho pero mucho mas rapido que el "IN" o > >> "NOT IN", siempre y cuando la subconsulta sea un sql y no un codigo > >> quemado es decir: > > > > El optimizador de Postgres es totalmente diferente del de Oracle. > > > > En Postgres, EXISTS solía ser más rápido que IN (select), hasta que el > > manejo de IN fue cambiado en 7.4 (creo). Ahora en 8.4 con lo de los > > semijoins y antijoins es posible que las cosas nuevamente sean > > diferentes. > > > > En realidad lo único estable que puede decirse es que de una versión a > > la siguiente es posible que la versión que antes era más lenta pase a > > ser la más rápida, y que la forma de saber es probar ambas :-) > > > >> Respecto al left join y su variante right join, creo que en postgres > >> nadie se va a salvar de usuarlos algun momento, pero cuando no es > >> necesario yo prefiero el clasico producto cartesiano con el simbolo "= > >> ", y no el inner join o sentencias del sql anci... > > > > En Postgres, usar el producto cartesiano con = es lo mismo que usar un > > inner join. Los outer join son una herramienta absolutamente > > indispensable, y si a alguien le parecen confusos, pues mala suerte :-) > > MMmmmm no era eso lo que quieria leer .. pero lo sospeche desde un > principio :P ! > > Tendre que aprender a hacer la rueda de nuevo :0) > > > > >> Si alguien me indica alguna manera de evitar el left join y right > >> join, asi como en oracle existe el operador (+) el mismo que se coloca > >> en cualquiera de los lados de las comparaciones donde se conoce que no > >> va a tener la información. > > > > Como ya dijo Jaime, LEFT y RIGHT son la forma estandar (SQL) de definir > > los outer join. La sintaxis (+)= de Oracle predata la definición del > > estándar y entiendo que está obsoleta. > > > > -- > > Alvaro Herrera > http://www.amazon.com/gp/registry/CTMLCN8V17R4 > > "Por suerte hoy explotó el califont porque si no me habría muerto > > de aburrido" (Papelucho) > > -- > > TIP 10: no uses HTML en tu pregunta, seguro que quien responda no podrá > leerlo > > > > > > -- > Cumprimentos > jchavez > linux User #397972 on http://counter.li.org/ > -- > TIP 5: ¿Has leído nuestro extenso FAQ? > http://www.postgresql.org/docs/faqs.FAQ.html >