Unless you explain why you need a select you don't need one. The Update does exactly what you're saying with the where conditions in place it find all rows that meet those conditions and then updates them. There isn't any need for a subquery as far as I can see. Everything you've said points at exactly the query I just gave you. You don't require a sub query.
This is quite embarrassing. I think that you are right: this can be done without the subquery !
I guess I just put into my mind that the subquery is necessary then I saw no way to do it without a subquery.