The WHERE predicate marks which rows are TRUE for update.
WHERE then SET
Read WHERE results
WHERE matches 1 row and produces 0 UNKNOWN result here.
matched=1
UPDATE examples are tiny finite row modifications; SQL dialect completeness, joins in UPDATE, subqueries, triggers, constraints, transactions, locks, indexes, optimizer behavior, performance, and product behavior are out of scope.
Only TRUE updates
Rows marked FALSE or UNKNOWN are not updated.
TRUE rows only
Summary
The SET list is applied only after WHERE chooses rows.