We hebben details nodig over wat niet werkt, maar ik denk dat je alleen het volgende hoeft te gebruiken:
UPDATE TablePeople
SET missingdate = (SELECT MAX(te.replacementDate)
FROM TABLEEVENT te
WHERE te.people_id = TablePeople.id)
WHERE missingdate IS NULL
Opmerkingen
- MAX wordt gebruikt om de laatste vervangingsdatum te retourneren, uit angst voor het risico dat u meerdere waarden uit de subquery krijgt
- Als er geen ondersteunend record is in TABLEEVENT, wordt null geretourneerd, dus er is geen verandering