tencent cloud

文档反馈

同环比函数

最后更新时间:2024-01-22 10:52:48
    本文介绍同环比函数的基础语法和示例。
    日志服务(Cloud Log Service,CLS)支持如下同环比函数。
    函数名称
    语句
    含义
    compare(x,n)
    对比当前时间周期内的计算结果与n秒之前时间周期内的计算结果。
    compare(x,n1,n2,n3...)
    对比当前时间周期内的计算结果与n1秒、n2秒、n3秒之前时间周期内的计算结果。

    compare 函数

    compare 函数用于对比当前时间周期内的计算结果与 n 秒之前时间周期内的计算结果。

    语法

    对比当前时间周期内的计算结果与n秒之前时间周期内的计算结果。
    compare(x, n)
    对比当前时间周期内的计算结果与n1、n2、n3秒之前时间周期内的计算结果。
    compare(x, n1, n2, n3...)

    参数说明

    参数
    说明
    x
    参数值为 double 类型或 long 类型。
    n
    时间窗口,单位为秒。例如3600(1小时)、86400(1天)、604800(1周)、31622400(1年)。

    返回值类型

    JSON 数组。格式为[当前计算结果,n 秒前的计算结果,当前计算结果与 n 秒前计算结果的比值]。

    示例

    示例1:计算当前1小时和昨天同时段的网站访问量比值

    选择查询和分析的时间范围为近1小时,并执行如下查询和分析语句,其中86400表示当前时间减去86400秒(1天)。
    查询和分析语句
    * | SELECT compare(PV, 86400) FROM (SELECT count(*) AS PV)
    查询和分析结果
    [1860,1656,1.1231884057971016]
    1860表示当前1小时的网站访问量。
    1656表示昨天同时段的网站访问量。
    1.1231884057971016表示当前1小时与昨天同时段的网站访问量比值。
    如需查询和分析结果为分列显示,则查询和分析语句为:
    * |
    SELECT compare[1] AS today, compare[2] AS yesterday, compare[3] AS ratio
    FROM (
    SELECT compare(PV, 86400) AS compare
    FROM (
    SELECT COUNT(*) AS PV
    )
    )

    示例2:计算今天每5分钟网站访问量变化趋势与昨天同时间段的对比

    选择查询和分析的时间范围为今天,并执行如下查询和分析语句,其中86400表示当前时间减去86400秒(1天),current_date 表示今天的日期。
    注意:
    时间范围不能跨天,因为示例中已经将日志时间裁剪为%H:%i:%s,仅包含时、分、秒,未包含日期,跨天会导致数据统计错误。
    查询和分析语句
    * |
    select concat(cast(current_date as varchar),' ',time) as time,compare[1] as today,compare[2] as yesterday from (
    select time,compare(pv, 86400) as compare from (
    select time_series(__TIMESTAMP__, '5m', '%H:%i:%s', '0') as time, count(*) as pv group by time limit 1000)
    limit 1000)
    order by time limit 1000
    查询和分析结果
    
    
    
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持