On Thu, 2009-06-18 at 22:39 -0300, Mario Wojcik wrote: > Hola gente, molestandolos de nuevo con una consulta que no logro hacer... > Tengo un historico de precios por proveedor, y necesito listar los > ultimos precios de cada articulo de un solo proveedor y no doy pie con > bola en el asunto. > La tabla tiene: > id cod_prov articulo precio fecha > 1 0001 5000 3.5 20090101 > 2 0002 3000 2.5 20090105 > 3 0001 3000 7.99 20090203 > 4 0001 5000 5.00 20090203 > > Y lo que necesito es esto: > id cod_prov articulo precio fecha > 3 0001 3000 7.99 20090203 > 4 0001 5000 5.00 20090203 > > Intente con havin, con subselect y groups pero o me da error la consulta > o me lista un solo campo (no los 5) sin repetir :( > Gracias! >
Creo que algo como esto te puede servir: SELECT id, cod_prov, articulo, precio, fecha FROM precios_proveedor p WHERE cod_prov = identificacion_proveedor AND fecha = (SELECT MAX(fecha) FROM precios_proveedor WHERE articulo = p.articulo); -- Juan Gabriel Romero Silva -- TIP 2: puedes desuscribirte de todas las listas simultáneamente (envía "unregister TuDirecciónDeCorreo" a majord...@postgresql.org)