Thank you!  Can you filter the list to show just the rows that correspond with the 3 most recent "date from" values?
select t3.student_details, t1.city, t1.line_1 from addresses as t1 join people_addresses as t2 on t1.address_id = t2.address_id join students as t3 on t2.person_id = t3.student_id order by date_from desc limit 3