intranet-queries/2011-09-19-lineas_desde_2006.sql

36 lines
1021 B
SQL

-- Ventas por línea por año por sucursal
SELECT
CONCAT(dvi.id_sucursal,DATE_FORMAT(MAX(dv.fecha),'%Y'),l.id_linea) AS Llave,
dvi.id_sucursal AS Sucursal,
DATE_FORMAT(MAX(dv.fecha),'%Y-01-01') AS Ano,
l.id_linea AS Linea,
l.descripcion AS Descripcion,
SUM(dvi.valor) AS Valor,
SUM(dvi.cantidad*i.peso*(IF(dvi.valor>0,1,-1))) AS Peso,
SUM(dvi.costo) AS Costo,
SUM(dvi.valor-dvi.costo) AS Utilidad
FROM
documento_ventas dv
JOIN documento_ventas_has_item dvi
ON ( dv.id_documento=dvi.id_documento AND dv.id_sucursal=dvi.id_sucursal )
JOIN item i
ON ( dvi.id_item=i.id_item AND dvi.id_sucursal=i.id_sucursal )
JOIN linea l
ON ( l.id_linea = LEFT(i.id_linea,2) AND l.tipo = i.tipo )
WHERE
LEFT(dv.id_documento,2) RLIKE "F|D[^0-9MP]"
AND NOT (i.tipo LIKE "5")
AND NOT (dv.id_cliente LIKE "999")
AND dv.fecha >= '2006-01-01'
AND dv.fecha <= '2011-08-31'
GROUP BY
Sucursal, Linea, DATE_FORMAT(dv.fecha,'%Y-%m')
ORDER BY
Llave ASC