ipotizzo:
dopo la risoluzione dei nomi della tabella (from e left join) viene risolto il where.
Ora viene selezionato il record che risponde alla condizione che ovviamente non e' il max(prove_fisiche.data) ma quello che risponde true alla where.
Prova a mettere where DATE_ADD(max(Data Prova Fisica)
hai messo degli spazi nei nomi di campo???? pessima idea.