Partition 函数-杨雪
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-模块/函数/VBA


Partition 函数

发表时间:2021/2/7 8:01:25 评论(0) 浏览(4197)  评论 | 加入收藏 | 复制
   
摘 要:返回 Variant (String),指示数字在计算的一系列范围内出现的位置。
正 文:
语   法:
分区(number, start, stop, interval)
Partition 函数语法包含以下命名参数:
Part                      说明
number 必需。      要针对区域计算的数字。
start 必需。           作为整个数字范围的开头的数字。 该数字不能小于 0。
stop 必需。           总数字范围的结束的数字。 该数字不能等于或小于 start。
interval 必需。       一个范围和下一个范围之间的差异的数字。 该数字不能小于1。


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


下表显示了如何使用三组 start、stop 和 interval 部分确定范围。 “第一个范围”和“最后一个范围”列显示了 Partition 返回的结果。 区域由_lowervalue_: _uppervalue_表示, 其中范围的低端 (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: "

在前面显示的表中, 第三行显示当_start_和_stop_定义一组不能按_间隔_划分的数字时的结果。 最后一个范围以 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。


示   例:
本示例假定您有一个包含 "数量" 字段的 "采购订单明细" 表。 它创建了一个选择过程,用于计算各个范围内的的数量。 首先使用分区函数建立这些区域, 然后 SQL Count函数对每个区域中的数量进行计数。
在此示例中,Partition 函数的参数如下:start = 0,stop = 500,interval = 50。 因此,第一个范围将为 0:49,依此类推,直到 500。


图   示:

点击图片查看大图


代   码:

Select DISTINCTROW Partition([数量],0, 500, 50) AS Range, Count(采购订单明细表.数量) AS [Count]
FROM 采购订单明细表
GROUP BY Partition([数量],0,500,50);


附   件:

点击下载此示例


Access软件网交流QQ群(群号:198465573)
 
 相关文章
SQL Server 表分区(partitioned table/...  【UMVsoft整理  2008/7/12】
【access入门】统计符合条件的记录数\条数\个数\计数示例,c...  【麥田  2011/6/29】
[access查询]Partition函数数据分组合计  【蒋元根  2011/9/12】
【access入门】统计奇偶数\统计奇数偶数的记录数示例\奇偶计数...  【麥田  2012/2/3】
sql 分组取最新的数据sqlserver巧用row_number...  【缪炜  2016/12/16】
获取指定范围内的随机整数  【杨雪  2017/4/6】
查询指定日期范围内的数据记录  【杨雪  2017/7/18】
常见问答
技术分类
相关资源
文章搜索
关于作者

杨雪

文章分类

文章存档

友情链接