CASEを使用する必要はありません...この場合、次のようにOR条件を使用できます:
WHERE
pw='correct'
AND (id>=800 OR success=1)
AND YEAR(timestamp)=2011
これは、id <800の場合、条件がtrueと評価されるためには成功が1でなければならないことを意味します。そうでなければ、それはとにかく真実になります。
あまり一般的ではありませんが、次のようにCASEWHENを使用することもできます。
WHERE
pw='correct'
AND CASE WHEN id<800 THEN success=1 ELSE TRUE END
AND YEAR(timestamp)=2011
つまり、success=1
を返します。 (TRUEまたはFALSEの場合があります)id <800の場合、またはそれ以外の場合は常にTRUEを返します。