分区函数

返回 Variant (String),指示数字在计算的一系列范围内出现的位置。

语法

分区 (编号开始停止间隔)

Partition 函数语法包含以下命名参数

Part 说明
number 必需。 要根据范围计算的数字。
start 必填。 是整个数字范围的开头的数字。 该数字不能小于 0。
stop 必填。 是整个数字范围末尾的数字。 该数字不能等于或小于 start
interval 必需。 一个范围与下一个范围之间的差值的数字。 数字不能小于 1。

备注

Partition 函数确定 number 所在的特定范围并返回描述该范围的 Variant (String)。 Partition 函数在查询中最有用。 您可以创建一个选择查询,该查询显示了各个范围内有多少个订单,例如 1 到 1000、1001 到 2000 等范围内的订单值。

下表显示了如何使用三组 startstopinterval 部分确定范围。 “第一个范围”和“最后一个范围”列显示了 Partition 返回的结果。 范围由 lowervalue 表示: 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: "

在前面显示的表中,当 开始停止 定义一组不能均匀除以 间隔的数字时,第三行显示结果。 最后一个范围以 stop 为下限(11 个数字),即使 interval 为 20 时也是如此。

必要时,Partition 会返回带有足够多个前导空格的范围,以便让冒号的左右两侧的字符数等于 stop 中的字符数加 1。 这将确保在将 Partition 与其他数字一起使用时,生成的文本在任何后续排序操作中得到正确的处理。

如果 interval 是 1,则范围为 number:number,无论 startstop 参数是多少都是如此。 例如,如果 interval 是 1,number 是 100,stop 是 1000,则 Partition 会返回 " 100: 100"。

任何参数都可以是十进制值,但在处理之前,它将舍入为最接近的偶数整数。 如果任一参数为 Null则 Partition 返回 Null

示例

此示例假定你有一个包含 Freight 字段的 Orders 表。 它创建了一个选择过程,用于计算各个范围内的货运成本的订单的数量。 Partition 函数首先用于建立这些范围,然后 SQL Count 函数计算每个区域中的订单数。

在此示例中,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 支持和反馈,获取有关如何接收支持和提供反馈的指南。