33 lines
938 B
SQL
33 lines
938 B
SQL
-- Numero de clientes distintos por semestre
|
|
SELECT
|
|
YEAR(dv.fecha) AS Ano,
|
|
IF(MONTH(dv.fecha) < 7, 1, 2) AS Semestre,
|
|
MIN(dv.fecha) AS Fecha_desde,
|
|
MAX(dv.fecha) AS Fecha_hasta,
|
|
COUNT(DISTINCT dv.id_cliente) AS Clientes,
|
|
SUM(dvi.cantidad*i.peso*(IF(dvi.valor>0,1,-1))) AS Peso,
|
|
SUM(dvi.valor) AS Valor
|
|
|
|
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 )
|
|
JOIN cliente_has_sucursal cs
|
|
ON ( dv.id_sucursal=cs.id_sucursal
|
|
AND dv.id_cliente=cs.id_cliente )
|
|
|
|
WHERE
|
|
(LEFT(dv.id_documento,2) = 'DV' OR
|
|
LEFT(dv.id_documento,2) = 'EF' OR
|
|
LEFT(dv.id_documento,1) = 'F')
|
|
AND YEAR(dv.fecha) >= 2016
|
|
|
|
GROUP BY
|
|
Ano,Semestre
|
|
|
|
ORDER BY
|
|
Ano,Semestre
|