Best practice for MySQL CASE with multiple WHEN conditions vs a single OR condition
The performance difference between the two suggestions is insignificant.
As a rule of thumb, fetching a row is far more costly than any expressions that need to be evaluated for that row.
Do whichever is easier for you.
The expressions in those examples will be evaluated before it starts to perform the query.  Perhaps your real query is more involved than that?  In particular, if 2 &gt; 0 is, instead, some complex subquery, then I need to reconsider my answer.
These may apply to MySQL:

&quot;short circuit&quot; -- But for simple expressions, you would be hard put to measure the performance difference.
When possible MATCH .. AGAINST (FULLTEXT) is performed first.  (But this applies to WHERE, not CASE.)
User functions can be defined as DETERMINISTIC or non.  This should impact the evaluation.  (But I don't have proof of such.)
@variables are probably soon to be deprecated due to evaluation issues.