-- Clientes para clasificacion ABC (comparacion pareto anual) SET NAMES 'utf8'; SELECT cl.id_cliente AS Nit, cl.nombre_cliente AS Cliente, cs.cupo AS Cupo, (IF(cs.cupo>0,"Credito","Contado")) As TipoCliente, v.nombre_vendedor AS Asesor_asignado, cs.id_sucursal AS Sucursal_asesor, SUM(dv.valor) AS ventas_cop, ROUND( SUM( dvi.cantidad * i.peso * (IF(dvi.valor >0, 1 , -1)) ), 2 ) AS ventas_kg, COUNT(dv.id_documento) AS numero_facturas FROM cliente cl JOIN cliente_has_sucursal cs USING (id_cliente) LEFT JOIN documento_ventas dv ON (dv.id_sucursal = cs.id_sucursal AND dv.id_cliente = cs.id_cliente) JOIN documento_ventas_has_item dvi ON ( dv.id_documento = dvi.id_documento AND dv.id_sucursal = dvi.id_sucursal ) JOIN item i USING ( id_item ) LEFT JOIN recaudo r ON (r.id_cliente = cs.id_cliente AND r.id_sucursal = cs.id_sucursal AND r.id_documento = dv.id_documento) LEFT JOIN vendedor v ON (cs.id_vendedor = v.id_vendedor) 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) = 2015 GROUP BY Nit