Re: Consulta con JOINs

From: "Guillermo O(dot) Burastero" <linux(dot)gb(at)gmail(dot)com>
To: "Lista de PostgreSQL en Español" <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Consulta con JOINs
Date: 2012-09-19 02:33:35
Message-ID: CAEKEwfnx0eHMj+ona3HQja95wwatSuZ73mewxFRkBU7mALHXxg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola,

El día 18 de septiembre de 2012 20:48, oscar arocha
<arocha(dot)oscar(at)gmail(dot)com> escribió:
> Saludos lista, nuevamente por aquí solicitando su colaboración, esta vez
> tengo un inconveniente al momento de realizar una consulta que me permita
> saber el total de productos solicitados, la estructura de tablas es algo
> similar a esto
>
> tipo_prod{
>
> id_tipo int,
> tipo varchar
>
> }
>
> producto{
>
> id_prod int,
> id_tipo int,
> producto
>
> }
>
> solicitud {
>
> id_sol int,
> fecha date
>
> }
>
> prod_sol{
>
> id_prod int,
> id_sol int,
> cantidad int
>
> }
>
> el query que ejecuto es:
>
> SELECT A.tipo_prod, SUM(C.cantidad)
> FROM tipo_prod A
> LEFT OUTER producto B ON (A.id_tipo = B.id_tipo)
> LEFT OUTER prod_sol C ON (B.id_prod = C.id_prod)
> LEFT OUTER solicitud D ON (C.id_sol = D.id_sol AND D.fecha BETWEEN
> '2012-01-01' AND '2012-01-31')
>
> El inconveniente es que no logro dar con la combinación de JOINs para que
> me pueda generar la lista de tipo_prod completa, con las cantidades
> correspondientes a ese rango de fecha. ya que el resultado que me arroja es
> la suma de todas las solicitudes sin tomar en cuenta el rango de fecha.
>
> Si pueden ayudarme con la consulta se los agradezco.
>
> --
> Ing. Oscar Arocha
> CIV 208.476
> 0416-4257379
> twitter: @ArochaOscar
>

Primero no tiene sentido sumar cantidades de solicitudes de productos
distintos (aunque pertenezcan al mismo grupo) pues representan
distintas cosas (1). Segundo, las funciones de agregación como sum(*)
requieren una cláusula de agrupamiento GROUP BY.

Es como si en el grupo "Lácteos" sumás envases de yogur, con litros de
leche, con hormas o kg. de quesos. Las sumas de magnitudes
heterogéneas no tiene sentido.

Poné un ejemplo sensato del tipo de tabla resultado que pretendés, a
ver si te podemos ayudar.

Saludos cordiales.

--
Guillermo O. Burastero

Bahía Blanca, Buenos Aires, Argentina
Tel. +54 (291) 454-6132 - Móvil [15] 574-3173

MSN: guillermo(dot)burastero(at)gmail(dot)com
ICQ: 97148268
Usuario GNU/Linux #84879 - https://linuxcounter.net/user/84879.html

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jorge Garcia 2012-09-19 15:18:18 Ayuda Manejo de transacciones en una función.
Previous Message oscar arocha 2012-09-19 00:16:20 Re: Consulta con JOINs