Error de dedo es un = un poquito de logica amig@
Código SQL:
Ver originalSELECT t1.* FROM
(
query UNION
) t1
INNER JOIN
(
SELECT nit,nombre,MAX(fecha) fecha FROM
(
query UNION
) AS t3 GROUP BY nit,nombre
) t2 ON (t1.nit=t2.nit AND t1.nombre=t2.nombre AND t1.fecha=t2.fecha)