Вы можете использовать коррелированный подзапрос:
select p.*
from purchases as p
where p.purchasedate = (select max(p2.purchasedate)
from purchases as p2
where p2.client = p.client
);
В ваших данных у вас есть уникальный идентификатор. Это также предлагает:
select p.*
from purchases as p
where p.id = (select top 1 p2.id
from purchases as p2
where p2.client = p.client
order by p2.purchasedate desc
);