none
Mostrar datos entre años RRS feed

  • Pregunta

  • Buenas, quisiera saber como puedo mostrar datos de una tabla entra dos fechas, algo como esto:

    que en un campo muestre las ventas de este año y en el otro las del año pasado

    tengo una tabla de ventas, los Campos son:

    fecha_Venta, Total, IDVenta, IDProducto

    la tabla Productos:

    nombre_Productos, IDProducto, Precio, Costo

    tabla detallesVenta

    IDDetalles, IDVenta, IDProducto, Precio, Cantidad

    ya Muestro los ingresos de este año, pero me falta los del pasado, (la prueba, la hice con meses)


    Alexander Jimenez

    martes, 22 de noviembre de 2016 19:01

Respuestas

  • AJ Designs,

    Creo que bastará con lo siguiente:

    SELECT TOP 5
        P.nombre_Productos AS 'Producto',
        (MAX(P.Precio) - MAX(P.Costo)) * 
        SUM(CASE WHEN YEAR(V.fecha_Venta) = (YEAR(GETDATE()) - 1) THEN D.Cantidad END) 
    	   AS 'AñoAnterior',
        (MAX(P.Precio) - MAX(P.Costo)) * 
        SUM(CASE WHEN YEAR(V.fecha_Venta) = YEAR(GETDATE()) THEN D.Cantidad END) 
    	   AS 'AñoActual'
    FROM
        DetallesVenta D
        INNER JOIN Productos P ON (D.IDProducto = P.IDProducto)
        INNER JOIN Ventas V ON (D.IDVenta = V.IDVenta)
    WHERE
        YEAR(V.fecha_Venta) BETWEEN YEAR(GETDATE()) - 1 AND YEAR(GETDATE())
    GROUP BY
        P.IDProducto,
        P.nombre_Productos
    ORDER BY
        AñoActual DESC;



    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    martes, 22 de noviembre de 2016 19:23