Функция NTILE |
||
Задача. Распределить баллончики по 3-м группам поровну. Группы заполняются в порядке возрастания v_id. Эту задачу решает функция ранжирования NTILE, которая появилась в Cистема управления реляционными базами данных (СУБД), разработанная корпорацией Microsoft. Язык структурированных запросов) — универсальный компьютерный язык, применяемый для создания, модификации и управления данными в реляционных базах данных. SQL Server 2008. Эта функция возвращает номер группы, в которую попадает соответствующая строка результирующего набора.
Параметром функции NTILE является число групп. Остальное вам уже известно. :-) Если мы захотим распределить порознь баллончики каждого цвета, то, как и для других функций ранжирования, можно добавить конструкцию PARTITION BY в предложение OVER:
Обратите внимание на группы синего цвета (B). В двух первых группах оказалось по 6 баллончиков, а в третьей только 5. В случае, когда число строк не делится нацело на число групп, функция NTILE помещает в последние группы на одну строку меньше, чем в первые. Наконец, если аргумент функции NTILE окажется больше числа строк, то будет сформировано количество групп, равное числу строк, и в каждой группе окажется по одной строке. Рекомендуемые упражнения: 130 |