Функция Partition

Возвращает значение типа Variant (String), которое указывает положение числа в пределах рассчитанной серии диапазонов.

Синтаксис

Partition(number, start, stop, interval)

Синтаксис функции Partition состоит из следующих именованных аргументов:

Part Описание
число Обязательный аргумент. Число, которое требуется вычислить по диапазонам.
start Обязательно. Число, которое является началом общего диапазона чисел. Число не может быть меньше 0.
stop Обязательно. Число, которое является концом общего диапазона чисел. Число не может быть равно или меньше значения start.
интервал Обязательный аргумент. Число, которое является разницей между одним диапазоном и следующим. Число не может быть меньше 1.

Замечания

Функция Partition определяет диапазон, в который попадает число number, и возвращает значение типа Variant (String), описывающее этот диапазон. Функция Partition особенно полезна при запросах. Вы можете создать запрос выбора, который показывает, сколько порядков находится в различных диапазонах, например, порядковые значения от 1 до 1000, от 1001 до 2000 и т. д.

В указанной ниже таблице приводится порядок определения диапазонов с использованием трех наборов частей start, stop и interval. Столбцы "Первый диапазон" и "Последний диапазон" показывают результат, возвращаемый функцией Partition. Диапазоны представлены нижним значением: uppervalue, где нижний конец (нижнее значение) диапазона отделяется от верхнего конца (uppervalue) диапазона двоеточием (:).

start stop interval Перед первым Первый диапазон Последний диапазон После последнего
0 99 5 " :-1" " 0: 4" " 95: 99" " 100: "
20 199 10 " : 19" " 20: 29" " 190: 199" " 200: "
100 1010 20 " : 99" " 100: 119" " 1000: 1010" " 1011: "

В таблице, показанной ранее, в третьей строке показан результат, когда start и stop определяют набор чисел, которые не могут быть равномерно разделены по интервалу. Последний диапазон доходит до значения stop (11 чисел), даже если значение interval равно 20.

При необходимости функция Partition возвращает диапазон с достаточным количеством начальных пробелов, чтобы слева и справа от двоеточия было столько же символов, сколько в части stop, плюс один. При использовании функции Partition с другими числами полученный текст будет обрабатываться надлежащим образом во время последующих операций.

Если значение interval — 1, диапазон равен number:number, независимо от аргументов start и stop. Например, если значение interval равно 1, number — 100, а stop — 1000, функция Partition возвращает " 100: 100".

Любой аргумент может быть десятичным значением, но перед обработкой он будет округлен до ближайшего четного целого числа. Если какой-либо из аргументов имеет значение NULL, функция Partition возвращает значение NULL.

Пример

В этом примере предполагается, что у вас есть таблица Orders, содержащая поле Freight. Он создает процедуру выбора, которая подсчитывает количество заказов, для которых стоимость фрахта приходится на каждый из нескольких диапазонов. Функция Partition используется сначала для установки этих диапазонов, а затем функция СЧЕТЧИК SQL подсчитывает количество заказов в каждом диапазоне.

В этом примере аргументами функции Partition являются start = 0, stop = 500, interval = 50. Таким образом, первый диапазон будет 0:49 и т. д. до 500.

SELECT DISTINCTROW Partition([freight],0, 500, 50) AS Range,
Count(Orders.Freight) AS Count
FROM Orders
GROUP BY Partition([freight],0,500,50);

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.