Creo que por aquí anda la solución, y la respuesta al misterio.
Aclaro que volví a escribir la totalidad de la consulta para hacerla entendible en forma secuencial.
El problema viene por dos partes:
1) Se requiere que el segundo LEFT JOIN relacione las compras hechas en la misma fecha, de lo contrario los registros se repiten.
2) Nunca, NUNCA se almacenan valores con la sigla de su unidad de medida. El problema de la unidad de medida es una cuestión de representación en la aplicación, y no pertenece a la base de datos. Además, se requieren más caracteres para representar "100000" que para almacenar 10000.
La idea sería:
Código MySQL:
Ver original C.nombre `Nombre`,
IFNULL(SUM(R.importetotal
), 0) `Importe RES`, COUNT(R.peso
) `Ventas ACHURA`, IFNULL(SUM(A.importeventaachura
), 0) `Importe Total ACHURA`, COUNT(A.peso
) `Ventas RES`, LEFT JOIN achuras A
ON C.codcliente
= A.codcliente
AND R.fecha_salida
= A.fecha_salida
+-------------+----------+-------------+-----------+---------------+----------------------+-------------+------------+------------+-------------+
| Cod. Cliene | Nombre | Importe RES | Peso .RES | Ventas ACHURA | Importe Total ACHURA | Peso ACHURA | Ventas RES | Total Peso | Total valor |
+-------------+----------+-------------+-----------+---------------+----------------------+-------------+------------+------------+-------------+
| 1 | julian | 6000 | 600 | 2 | 0 | 0 | 0 | 600 | 6000 |
| 2 | isaura | 2400 | 240 | 4 | 1000 | 100 | 2 | 340 | 3400 |
| 3 | santiago | 8000 | 800 | 1 | 0 | 0 | 0 | 800 | 8000 |
| 4 | madre | 18000 | 1800 | 3 | 500 | 500 | 1 | 2300 | 18500 |
| 5 | david | 9000 | 900 | 1 | 0 | 0 | 0 | 900 | 9000 |
+-------------+----------+-------------+-----------+---------------+----------------------+-------------+------------+------------+-------------+
Si a esto le ponemos la condición de fecha:
Código MySQL:
Ver original C.nombre `Nombre`,
IFNULL(SUM(R.importetotal
), 0) `Importe RES`, COUNT(R.peso
) `Ventas ACHURA`, IFNULL(SUM(A.importeventaachura
), 0) `Importe Total ACHURA`, COUNT(A.peso
) `Ventas RES`, LEFT JOIN achuras A
ON C.codcliente
= A.codcliente
AND R.fecha_salida
= A.fecha_salida
WHERE A.fecha_salida
= '2010-04-26' AND A.fecha_salida
= '2010-04-26'
+-------------+--------+-------------+-----------+---------------+----------------------+-------------+------------+------------+-------------+
| Cod. Cliene | Nombre | Importe RES | Peso .RES | Ventas ACHURA | Importe Total ACHURA | Peso ACHURA | Ventas RES | Total Peso | Total valor |
+-------------+--------+-------------+-----------+---------------+----------------------+-------------+------------+------------+-------------+
| 2 | isaura | 1200 | 120 | 2 | 1000 | 100 | 2 | 220 | 2200 |
| 4 | madre | 6000 | 600 | 1 | 500 | 500 | 1 | 1100 | 6500 |
+-------------+--------+-------------+-----------+---------------+----------------------+-------------+------------+------------+-------------+
Nota: Me vi obligado a usar la función REPLACE para quitar la basura del campo.