Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Нестандартное ранжирование  [new]
minya13_85
Member

Откуда: Москва
Сообщений: 606
В общем делаю накладную ТОРГ-12. Нужен по страничный итог данных. Т.к. отчетная система не предусматривает итоги по страницам, хочу сделать принудительную группировку по рангу, и потом подытоги по этой группе. на одну страницу помещается 31 строка, за исключением первой страницы, там помещается 6 строк, т.к. все остальное занимает шапка.
Конечно можно сначала сделать сначала внутренний ранг 1,2,3,4....100, а потом Case when если <7 then 1, Если >=7 and <32 then 2 и т.д.. Но сколько таких case Написать, если накладная будет состоять из тысячи строк. Не совсем удобно получится.
Microsoft SQL Server 2008 (SP3) - 10.0.5520.0 (X64) 
	Jul 11 2014 16:11:50 
	Copyright (c) 1988-2008 Microsoft Corporation
	Enterprise Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)


Можно ли как-то с помощью стандартных функций ранжирования, от ранжировать по 31 записи, данные, за исключением первой страницы?
10 авг 16, 13:09    [19524509]     Ответить | Цитировать Сообщить модератору
 Re: Нестандартное ранжирование  [new]
o-o
Guest
select n, 
       case 
           when n <= 6 then 0
           else (n - 6)/ 32 + 1
       end as page_number    
from dbo.nums
order by 1
10 авг 16, 13:24    [19524635]     Ответить | Цитировать Сообщить модератору
 Re: Нестандартное ранжирование  [new]
minya13_85
Member

Откуда: Москва
Сообщений: 606
o-o
select n, 
       case 
           when n <= 6 then 0
           else (n - 6)/ 32 + 1
       end as page_number    
from dbo.nums
order by 1

Блин точно)) Че-то я вообще загнался, спасибо.
10 авг 16, 14:03    [19524912]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить