分区函数
返回 Variant (String),指示数字在计算的一系列范围内出现的位置。
语法
分区 (编号、 开始、 停止、 间隔)
Partition 函数语法包含以下命名参数:
Part | 说明 |
---|---|
number | 必需。 要根据范围计算的数字。 |
start | 必填。 是整个数字范围的开头的数字。 该数字不能小于 0。 |
stop | 必填。 是整个数字范围末尾的数字。 该数字不能等于或小于 start。 |
interval | 必需。 一个范围与下一个范围之间的差值的数字。 数字不能小于 1。 |
备注
Partition 函数确定 number 所在的特定范围并返回描述该范围的 Variant (String)。 Partition 函数在查询中最有用。 您可以创建一个选择查询,该查询显示了各个范围内有多少个订单,例如 1 到 1000、1001 到 2000 等范围内的订单值。
下表显示了如何使用三组 start、stop 和 interval 部分确定范围。 “第一个范围”和“最后一个范围”列显示了 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,无论 start 和 stop 参数是多少都是如此。 例如,如果 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 支持和反馈,获取有关如何接收支持和提供反馈的指南。