From: | "Jaime Casanova" <systemguards(at)gmail(dot)com> |
---|---|
To: | "Miguel Ortega" <mortega(at)tc(dot)com(dot)ve> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: De Ñs y JOINS |
Date: | 2006-06-22 23:32:16 |
Message-ID: | c2d9e70e0606221632g504808f2g8bce0a62eb811688@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
> Ahora lo que les queria preguntar, conversando con unos amigos que
> trabajan en Oracle, me di cuenta que ellos no utilizan los Joins para
> hacer sus selects.... es decir lo hace de la manera:
> "SELECT tabla1.*,tabla2.* FROM tabla1,tabla2 WHERE
> tabla1.campo=tabla2.campo"
>
> Y yo siempre hago las cosas asi:
>
> "SELECT tabla1.*, tabla2.* FROM tabla1 INNER JOIN tabla2 on
> tabla1.campo=tabla2.campo"
>
> Existe alguna diferencia a nivel de optimización o algo asi?
si la consulta tiene muchas tablas (mas de 6 o 7) y (en 8.1) tienes
join_collapse_limit = 1 entonces si hay diferencia, para mas
informacion puedes ver:
http://www.postgresql.org/docs/8.1/static/explicit-joins.html
y te aconsejaria revisar la misma pagina para otras versiones (solo
hay que cambiar el 8.1 que esta en la url por 8.0 o 7.4 o 7.3
> Yo les pregunte que como hacian los Left Joins en ese caso y me comentaron
> que hay una funcion en Oracle que hace eso (¿¿¿???)....
>
en oracle puedes hacer un OUTER JOIN incluyendo un simbolo (+) al lado
de la tabla en el FROM y luego haces el JOIN de forma implicita en el
WHERE
--
Atentamente,
Jaime Casanova
"Programming today is a race between software engineers striving to
build bigger and better idiot-proof programs and the universe trying
to produce bigger and better idiots.
So far, the universe is winning."
Richard Cook
From | Date | Subject | |
---|---|---|---|
Next Message | Jaime Casanova | 2006-06-22 23:37:49 | Re: SQLERRM & SQLSTATE |
Previous Message | Marcelino Guerrero | 2006-06-22 21:52:24 | OT: Amigos busco proveedor de equipos de computo en Santiago de Chile |