CASE würde funktionieren, aber Ihnen fehlt das END
. Aber in diesem Fall könnten Sie auch einfach IF(AcceptedAnswerId = Id,1,0)
verwenden .
In dem einfachen Fall, den Sie zeigen, könnten Sie das könnten mach einfach:
order by type,if(type=0,(@accepted:=acceptedanswerid),id<>@accepted),timestamp
aber ich weiß nicht, ob das in Ihrem realen Fall funktionieren würde.