How to avoid typecasting leading to full table update?
If you want you can use small trick

update urtable set  `VendorID` = 0 where `OrderID` = 0 and 
(select count(*) from urtable)&lt;&gt;(select count(*) from urtable where `OrderID` = 0)