Ще трябва да разделите своя ORDER BY
в множество CASE
изявления:
ORDER BY
CASE WHEN @orderby = 0 THEN news_edits.[time] END DESC,
CASE WHEN @orderby = 1 THEN news_edits.lastedit END DESC,
CASE WHEN @orderby = 2 THEN news_edits.title END DESC
Това е така, защото един CASE
изисква всички клонове да имат съвместими типове данни. Тъй като вашият символен низ е в един CASE
не може да се преобразува в дата час, върнат от друг CASE
, получавате грешка при преобразуване.