From: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
---|---|
To: | Yessica Brinkmann <yessica(dot)brinkmann(at)gmail(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Retornar 0 cuando no existen ocurrencias en consulta |
Date: | 2006-02-24 12:31:11 |
Message-ID: | 20060224123111.GA4351@surnet.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Yessica Brinkmann escribió:
> Muchas gracias por tu interés y tu respuesta.
> Conozco LEFT OUTER JOIN. Normalmente no me gusta mucho usarlo; en realidad,
> ni siquiera suelo usar los join simples, ya que trato de usar normalmente un
> sql que sea digamos "genérico", es decir, que funcione para cualquier
> gerenciador, sea este Postgres, SQLServer, Oracle, etc., ya que la empresa
> en la que trabajo este es siempre un requerimiento de desarrollo.
LEFT JOIN esta soportado al menos por Oracle, probablemente SQL Server
tambien. Es parte del estandar.
(No es cierto que no uses joins: la consulta
"SELECT * FROM a,b WHERE a.foo=b.bar" tiene un inner join).
> En todo caso, sino hay otra forma de hacerlo, usaré el LEFT OUTER JOIN. Me
> recomiendas que lo use dentro de la consulta a subtable o en la consulta
> principal?
Te recomiendo que lo uses solo donde es estrictamente necesario :-) La
verdad es que no recuerdo cual de los JOINs tuyos necesitaba ser
convertido a OUTER JOIN. Pero conceptualmente es simple: un left outer
join entrega tuplas para el RTE de la izquierda aun cuando no hay una
tupla correspondiente a la derecha. (RTE = Range Table Entry; cada
elemento individual de la clausula FROM es un RTE, sea una tabla,
subconsulta, etc).
--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.
From | Date | Subject | |
---|---|---|---|
Next Message | Yessica Brinkmann | 2006-02-24 12:44:48 | Re: Retornar 0 cuando no existen ocurrencias en consulta |
Previous Message | Yessica Brinkmann | 2006-02-24 11:37:11 | Re: Retornar 0 cuando no existen ocurrencias en consulta |