☰
✕
Главная
© 2002 - 2025
Diary.ru
forumsdk
| вторник, 02 марта 2010
Самы нормальный способ динамической сортировки для T-SQL
DECLARE @SortType TINYINT, @SortAscending BIT, @FirstRow INT, @MaxRows INT; SELECT @SortType = 2, @SortAscending = 0, @FirstRow = 10, @MaxRows = 10; WITH FoundCustomers AS ( SELECT ROW_NUMBER() OVER ( ORDER BY CASE WHEN @SortType = 0 AND @SortAscending = 1 THEN c.ContactName END ASC ,CASE WHEN @SortType = 0 AND @SortAscending = 0 THEN c.ContactName END DESC ,CASE WHEN @SortType = 1 AND @SortAscending = 1 THEN c.CompanyName END ASC ,CASE WHEN @SortType = 1 AND @SortAscending = 0 THEN c.CompanyName END DESC ,CASE WHEN @SortType = 2 AND @SortAscending = 1 THEN c.Country END ASC ,CASE WHEN @SortType = 2 AND @SortAscending = 0 THEN c.Country END DESC ) AS RowNumber ,c.* FROM dbo.Customers c ) SELECT fc.* FROM FoundCustomers fc WHERE fc.RowNumber BETWEEN @FirstRow AND @FirstRow + @MaxRows - 1 ORDER BY fc.RowNumber;
Я до этого всё перепробовал.
Скопипизжено с
lunarmedia.com/blogs/lunarmedia_blog/archive/20...
IT
программирование
Смотрите также
ДОД ПРАО (отзывы)
Предсказания Леонардо да Винчи
Погодное
Подсказать что-то, женщина? Нужна подсказка?
Испанское
"Горная невеста" (Vermiglio) Италия, Франция, Бельгия, 2024