Abbiamo bisogno di dettagli su ciò che non funziona, ma penso che tu debba solo usare:
UPDATE TablePeople
SET missingdate = (SELECT MAX(te.replacementDate)
FROM TABLEEVENT te
WHERE te.people_id = TablePeople.id)
WHERE missingdate IS NULL
Note
- MAX viene utilizzato per restituire l'ultima data di sostituzione, per paura di correre il rischio di ottenere più valori dalla sottoquery
- Se non ci sono record di supporto in TABLEEVENT, restituirà null quindi non ci saranno modifiche