Potřebujeme podrobnosti o tom, co nefunguje, ale myslím, že stačí použít:
UPDATE TablePeople
SET missingdate = (SELECT MAX(te.replacementDate)
FROM TABLEEVENT te
WHERE te.people_id = TablePeople.id)
WHERE missingdate IS NULL
Poznámky
- MAX se používá k vrácení posledního data výměny z obavy z rizika, že z dílčího dotazu získáte více hodnot
- Pokud v tabulce TABLEEVENT není žádný podpůrný záznam, vrátí hodnotu null, takže nedojde k žádné změně