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

Откуда: White Plains, NY
Сообщений: 18
Здравствуйте!
Наткнулся на запрос:

with N1(C) as (select 0 union all select 0) -- 2 rows
,N2(C) as (select 0 from N1 as T1 CROSS JOIN N1 as T2) -- 4 rows
,N3(C) as (select 0 from N2 as T1 CROSS JOIN N2 as T2) -- 16 rows
,N4(C) as (select 0 from N3 as T1 CROSS JOIN N3 as T2) -- 256 rows
,N5(C) as (select 0 from N4 as T1 CROSS JOIN N4 as T2) -- 65,536 rows
,IDs(ID) as (select row_number() over (order by (select NULL)) from N4)
select ID, ID % 15, ID % 5
from IDs

Можете подсказать что именно делает % в етом случае? Пробовал на другой таблице, последовательность цифр не всегда сохранялось (ID % 15 могло быть примерно как 1-6,8,9-11,13 и т.д) Буду признателен за ссылку с инфой!
9 июн 16, 18:30    [19277638]     Ответить | Цитировать Сообщить модератору
 Re: Что делат % при select ID, ID % 15, ID % 5?  [new]
iap
Member

Откуда: Москва
Сообщений: 47001
tem2003,

% - это остаток целочисленного деления.
9 июн 16, 18:36    [19277647]     Ответить | Цитировать Сообщить модератору
 Re: Что делат % при select ID, ID % 15, ID % 5?  [new]
tem2003
Member

Откуда: White Plains, NY
Сообщений: 18
iap,

Спасибо.
9 июн 16, 18:40    [19277655]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить