Obtener la Mayor Fecha de un conjunto de datos en MySQL

Hola Colegas, comparto el siguiente código SQL en MySQL para un caso interesante que tuve que resolver para un proceso que me solicitaron en un requerimiento de software. El requerimiento era que el sistema debia enviar un recordatorio por correo electrónico a todos aquellos pacientes que su última visita médica fuese hace un año exacto. La fórmula basicamente vendría siendo HOY – 1 año y verificar que la fecha concidiera con la ultima visita del paciente.

En primera instancia realicé el SQL que me devolviera la lista de pacientes con su última visita médica.

SELECT
	fk_id_paciente,
	MAX(DATE_FORMAT(fecha_cita, '%Y-%m-%d')) AS ULTIMA_VISITA
FROM
	cita
WHERE
	1
GROUP BY
	fk_id_paciente;

Luego, realicé otro SQL que anidara el SQL anterior «como una tabla temporal» para poder realizar el calculo/formula de la fecha actual menos un año y verificara el resultado de mi primer SQL junto con el id del paciente. De manera que al unir los dos SQL obtuve el resultado que andaba buscando.

SELECT * FROM pacientes, 

	(
		SELECT MAX(DATE_FORMAT(fecha_cita,'%Y-%m-%d')) AS ULTIMA_VISITA,
					 fk_id_paciente 
					 FROM cita 
					 WHERE 
1    
		GROUP BY fk_id_paciente
) as TMP 

WHERE 
DATE_ADD(CURDATE(),INTERVAL -1 YEAR) = TMP.ULTIMA_VISITA 
AND TMP.fk_id_paciente = pacientes.id_pacientes;

Buena Suerte!