This seems not to work:
discourse(prod)> Topic.where(category_id: 4).update_all(category_id: 20)
=> 0
discourse(prod)> Topic.where(id: 3).update_all(category_id: 20)
=> 0
And in Data Explorer I get:
Select id, closed, archived, title,category_id
from topics
where id = '3'
result:
id closed archived title category_id
3 true true Über die Kategorie Team 4