On Thu, 4 Dec 2025, David G. Johnston wrote:
> As mentioned, the aggregate max should be avoided - you aren’t doing
> statistics, you are ranking.
David,
Got it.
> Select person.*, lastcontact.* from person join lateral (select contact.*
> from contact where contact.person_id=person.person_id order by
> last_contact_date desc limit 1) as lastcontact on true;
Select person.*, lastcontact.*
from people
join lateral (select contact.*
from contacts
where contacts.person_nbr = people.person_nbr
order by last_contact_date
desc limit 1)
as lastcontact on true;
psql:companies-contacted-2025.sql:10: ERROR: missing FROM-clause entry for table "contact"
LINE 3: join lateral (select contact.*
So:
Select person.*, lastcontact.*
from people
join lateral (select contacts.*
from contacts
where contacts.person_nbr = people.person_nbr
order by last_contact_date
desc limit 1)
as lastcontact on true;
psql:companies-contacted-2025.sql:10: ERROR: column "last_contact_date" does not exist
LINE 6: order by last_contact_date
^
Regards,
Rich