CASE ще работи, но ви липсва END
. Но в този случай можете просто да използвате IF(AcceptedAnswerId = Id,1,0)
.
В простия случай, който показвате, вие можете просто направете:
order by type,if(type=0,(@accepted:=acceptedanswerid),id<>@accepted),timestamp
но не знам дали това би проработило във вашия реален случай.