none
Sacar ultimo precio de una tabla RRS feed

  • Pregunta

  • Buenas noches, ¿ como están? yo traigo una duda con una consulta sql que pensé seria fácil pero por mas vueltas que le doy no termino de que funcione correctamente.

    Tengo la siguiente tabla :

    Intid / Fecha / Cod/ Articulo / Cantidad / Precio

    Lo que necesito es sacar el ultimo precio para cada articulo.

    Pense que con :

    select max(fecha) as mfecha, cod, articulo, max(precio) as mprecio from mitabla group by cod, articulo

    Pero para cada articulo me saca la mayor fecha y el mayor precio.

    Gracias anticipadas. 

    domingo, 25 de marzo de 2018 23:17

Respuestas

  • El ejercicio propuesto es muy simple de resolver utilizando funciones ranking de ventana, por ejemplo:

    WITH T AS
    (
    	SELECT fecha, cod, articulo, precio, 
    		ROW_NUMBER() OVER(PARTITION BY cod, articulo ORDER BY fecha DESC) AS rn
    	FROM mitabla
    )
    SELECT fecha, cod, articulo, precio FROM T WHERE rn = 1;
    GO

    • Marcado como respuesta mayoko sábado, 31 de marzo de 2018 16:17
    lunes, 26 de marzo de 2018 0:15

Todas las respuestas

  • El ejercicio propuesto es muy simple de resolver utilizando funciones ranking de ventana, por ejemplo:

    WITH T AS
    (
    	SELECT fecha, cod, articulo, precio, 
    		ROW_NUMBER() OVER(PARTITION BY cod, articulo ORDER BY fecha DESC) AS rn
    	FROM mitabla
    )
    SELECT fecha, cod, articulo, precio FROM T WHERE rn = 1;
    GO

    • Marcado como respuesta mayoko sábado, 31 de marzo de 2018 16:17
    lunes, 26 de marzo de 2018 0:15
  • Muchisimas gracias, siento no haber podido responder antes , pero entro la festividad de la semana santa y perdí la conectividad.

    Muy amable ;)

    sábado, 31 de marzo de 2018 16:18