Я пытаюсь отобрать только тех пациентов, у которых было последнее назначение в 2015 году. Идеальная вещь выглядела бы так:
Select person.name, person.surname
inner join patient on patient.pat_id=person.per_id
inner join appointment on appointment.pat_id=patient.pat_id
where MAX(appointment.date) between '31.12.2014'and '01.01.2016'
Но значение MAX не допускается в предложении WHERE. Какой лучший обходной путь?