Din select-sats är mer komplex än den behöver vara, du kommer att få samma uppsättning så här:
SELECT emp.employee_id,min(bo.booking_date) booking_date
FROM employee emp
LEFT JOIN booking bo
ON bo.employee_id = emp.employee_id
WHERE emp.joining_date is NULL
GROUP BY emp.employee_id;
Din uppdatering kan göras så här, observera att avsnittet "och finns" är valfritt men jag tenderar att inkludera det för att göra avsikten med frågan tydligare.
UPDATE employee emp
SET emp.joining_date =
(SELECT min(booking_date) from booking bo where bo.employee_id = emp.employee_id)
WHERE emp.joining_date IS NULL
and exists(select * from booking bo where bo.employee_id = emp.employee_id);