CASE zadziała, ale brakuje Ci END . Ale w tym przypadku możesz po prostu użyć IF(AcceptedAnswerId = Id,1,0) .
W przedstawionym prostym przypadku możesz po prostu zrób:
order by type,if(type=0,(@accepted:=acceptedanswerid),id<>@accepted),timestamp
ale nie wiem, czy to zadziała w twoim prawdziwym przypadku.