云日志服务 LTS-聚合函数:approx_percentile函数
approx_percentile函数
用于对x进行正序排列,返回处于percentage位置的数值。
- 对于x进行正序排列,返回处于percentage位置的x,返回结果为double类型。
- 对x进行正序排列,返回处于percentage01、percentage02位置的x,返回结果为array(double,double)类型。
- 对x和权重的乘积进行正序排列,返回大约处于percentage位置的x,返回结果为double类型。
- 对x和权重的乘积进行正序排列,返回处于percentage01、percentage02位置的x,返回结果为array(double,double)类型。
语法:approx_percentile(x, weight, array[percentage01, percentage02...])
- 对x和权重的乘积进行正序排列,返回大约处于percentage位置的x,返回结果为double类型。支持设置返回结果的准确度。
参数名称 |
描述 |
类型 |
是否必选 |
---|---|---|---|
x |
原始字段 |
double |
是 |
percentage |
百分比值,取值范围为[0,1]。 |
double |
是 |
weight |
权重,大于1的整数。 设置权重后,系统根据x与权重的乘积进行排序。 |
int |
否 |
accuracy |
准确度,取值范围为(0,1)。 |
double |
否 |
返回值类型:double类型或array(double,...,double)类型
- 示例1:对request_time列进行排序后,返回大约处于50%位置的request_time字段的值。
表6 查询分析结果 类型
场景
查询语句
SELECT approx_percentile(request_time, 0.5)
返回结果
45.0
- 示例2:对request_time列进行排序后,返回处于10%、20%及70%位置的request_time字段的值。
表7 查询分析结果 类型
场景
查询语句
SELECT approx_percentile(request_time,array[0.1,0.2,0.7])
返回结果
[17.0, 24.0, 59.0]
- 示例3:根据request_time与权重的乘积对request_time列进行排序后,返回大约处于50%位置的request_time字段的值, 权重值为60。
表8 查询分析结果 类型
场景
查询语句
SELECT approx_percentile(request_time, 60, 0.5)
返回结果
45.0
- 示例4:根据request_time与权重的乘积对request_time列进行排序后,返回大约处于80%和90%位置的request_time字段的值,权重值为60。
表9 查询分析结果 类型
场景
查询语句
SELECT approx_percentile(request_time, 60, array[0.8, 0.9])
返回结果
[66.0,73.0]
- 示例5:根据request_time与权重的乘积对request_time列进行排序后,返回大约处于50%位置的request_time字段的值,权重值为60,准确度为0.2。
表10 查询分析结果 类型
场景
查询语句
SELECT approx_percentile(request_time, 60, 0.5, 0.2)
返回结果
45.0
- GaussDB函数_GaussDB数据库函数_高斯数据库函数_华为云
- GaussDB支持的函数_GaussDB函数类型解析_高斯数据库支持的函数-华为云
- 调用函数_函数调用方式_函数工作流 FunctionGraph-华为云
- GaussDB数据库函数_GaussDB函数和操作符_高斯数据库函数-华为云
- GaussDB数据库函数_GaussDB介绍_高斯数据库函数
- 云日志服务怎么使用_云日志服务使用流程_云日志服务LTS-华为云
- 什么是函数工作流_函数托管计算服务_函数工作流 FunctionGraph-华为云
- 使用容器镜像部署函数_函数部署_函数工作流 FunctionGraph-华为云
- 如何使用模板创建函数_模板创建函数_函数工作流 FunctionGraph-华为云
- 云日志服务有什么好处_为什么选择云日志服务_云日志服务LTS-华为云