update values with subquery returns not updatable

Category Image 101

Hi all, I have a question about updating two values in a sql table using a subquery. My database is called books and the below table books too:

id   title    author   location_id
11  Tera    Netrear 4
14  Disser  Bubu    1
15  Tenno   Puoio   4
16  Oban    Tyrone  5
18  Sisnobi Teru    3

Location_id is indeed another table as it's a foreign key in this table but that shouldn't matter. So what I want to do is to change all the location_id currently at 4 to 2. I know i could do it like this
update books set location_id = 1 where location_id = 4 but I'd like to know if I could do it with a subquery, something like update (SELECT * from books where location_id = 4) as thebook set thebook.location_id = 2 but when I run this query it tells me that the target table thebook UPDATE is not updatable. Why is that and can this be achieved - I don't really mind if it's not performant etc, I think it should be possible but I can't quite get the right way to do it...
So, the idea is, make a selection first then change a/more value/s on that selection, this is the concept I'm try to prove.
Any idea?

10 New Plugins for Beginner & Experienced Bloggers

Wp Plugins

Plugins for Beginner Bloggers and Experienced WordPress UsersSo you finally took the plunge and decided to create a WordPress website. That’s pretty impressive! You went ahead and added a great deal of fantastic content. Again, that’s awesome. All that remains now is growing your WordPress website and rock your world. Perhaps that’s not the case. You’ve been at it for a while […]

The post 10 New Plugins for Beginner & Experienced Bloggers appeared first on WPExplorer.