Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/06/2014, 08:02
nachocoletta
 
Fecha de Ingreso: mayo-2014
Mensajes: 4
Antigüedad: 9 años, 10 meses
Puntos: 0
Buscar registro de ultima fecha de distintos productos

tengo la siguiente vista

Código SQL:
Ver original
  1. SELECT
  2.     `factura`.`fecha` AS `fecha`,
  3.     `factura`.`numerofactura` AS `numerofactura`,
  4.     `factura`.`tipofactura` AS `tipofactura`,
  5.     `producto`.`nombreproducto` AS `nombreproducto`,
  6.     `factura`.`cantidadproducto` AS `cantidadproducto`,
  7.     `tarifa`.`precio` AS `precio`,
  8.     `proveedor`.`nombre` AS `nombre`,
  9.     `proveedor`.`idproveedor` AS `idproveedor`
  10.   FROM
  11.     (((`factura` JOIN `producto` ON((`factura`.`idproducto` = `producto`.`idproducto`))) JOIN `tarifa` ON((`factura`.`precio` = `tarifa`.`precio`))) JOIN `proveedor` ON((`proveedor`.`idproveedor` = `factura`.`idproveedor`)))
  12.   ORDER BY
  13.     `factura`.`fecha`,`factura`.`numerofactura`,`proveedor`.`nombre`

de esta vista quiero obtener lo siguiente:
el precio de la ultima fecha de cada producto...
probe con las siguientes consultas pero no tuve suerte...
Código SQL:
Ver original
  1. SELECT `vista_factura`.`nombre` AS nombre_proveedor,
  2.         `vista_factura`.`nombreproducto`,
  3.         `vista_factura`.`precio`,
  4.         `vista_factura`.`fecha`
  5. FROM
  6.         `vista_factura`
  7. WHERE
  8.         `vista_factura`.`idproveedor` = idProveedor AND `vista_factura`.`fecha` = (SELECT MAX(FACTURA.`fecha`)
  9.                                                                                              FROM `factura`);

idProveedor es una variable de entrada que le paso a un procedimiento almacenado...

tambien probe con esta...
Código SQL:
Ver original
  1. SELECT vf_1.* FROM `vista_factura` vf_1 INNER JOIN
  2. (
  3.     SELECT MAX(`vista_factura`.`fecha`) AS max_fecha, `vista_factura`.`nombreproducto`, `vista_factura`.`precio`
  4.     FROM `vista_factura`
  5.     GROUP BY `vista_factura`.`nombreproducto`
  6. ) vf_2
  7. ON vf_1.`nombreproducto` = vf_2.nombreproducto AND vf_1.`fecha` = vf_2.max_fecha

Alguien podra ayudarme?.
Gracias.

Última edición por gnzsoloyo; 06/06/2014 a las 09:01