Ok.
The members table has a record for this user, the rb_booking table has multiple bookings by this user (which we want to update), and the tempmembersonemail table contains his new login (+ the matching id for the members table)... why would the query therefore return a NULL?