From: | "Luis Fernando Curiel Cabrera" <lcuriel(at)gmail(dot)com> |
---|---|
To: | "Lista de Postgres" <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Ayuda con query |
Date: | 2008-05-28 21:33:49 |
Message-ID: | 4fa3ceed0805281433h5985b1blab7a1e2f6b8917e5@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
He estado trabajando un largo rato, y ya me atore en una simple query. Les
pido ayuda.
Tengo la tabla de productos, ventas y ventas detalle. Les anexo en la imagen
las tablas y relacion.
Necesito hacer un reporte que sea
- CODIGO PRODUCTO
- CODIGO BODEGA
- NOMBRE PRODUCTO
- STOCK
- LA FECHA QUE SE VENDIO POR ULTIMA VEZ
- CLIENTE AL SE LE VENDIO POR ULTIMA VEZ
- CUANTOS COMPRO
Use la query que esta abajo y funciona, pero al momento de aplicarlo con la
base de datos en producción es mucho muy lento. Ya que son más de 300000
registros
SELECT
public.bssale.date,
public.bssaledet.bsid_bsproduct,
public.bssaledet.product,
public.bssaledet.quantity
FROM public.bssale INNER JOIN public.bssaledet ON public.bssale.bsid =
public.bssaledet.bsid_bssale
WHERE public.bssaledet.bsid = (
SELECT MAX(bsid)
FROM bssaledet saledet
WHERE saledet.bsid_bsproduct = public.bssaledet.product
)
Que me recomiendan hacer, un STORE, crear una vista con algun estracto, o
como puedo optimizar mi query. Lo Intente con un GROUP BY HAVING, pero como
las fechas son distintas no agrupa. Quizas ya estoy bloqueado y no encuentro
una solución
--
Luis Fernando Curiel Cabrera
- Professional ABACO DE BOLITAS Developer.
- Certified ABACO DE BOLITAS Programmer.
Attachment | Content-Type | Size |
---|---|---|
image/gif | 20.1 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Jaime Casanova | 2008-05-28 22:24:15 | Re: Ayuda con query |
Previous Message | Jorge Vidal - Disytel | 2008-05-28 21:33:42 | Configuración de servidor para tablas grandes... |