让决策更智能
新一代智能数据分析平台

怎么计算精确到具体时间的同环比?

观小远发表于:2020年12月30日 19:43:20更新于:2021年05月13日 11:30:25

需求背景:BI自带的同环比功能最细只能计算到日粒度,时间宏也只能精确到日,但是很多情况下,用户需要直连数据库统计当天的实时数据,跟昨天或者其他日期的同时段数据做对比,例如,现在是下午3:30,需要统计今天零点到下午3:30的数据,然后跟昨天零点到下午3:30的数据做对比。

前提:1. 直连数据集;2.数据集里时间字段格式为 datetime(或 timestamp)

思路:卡片里数值栏的计算结果不能用来进行二次计算,所以需要新建计算字段来分别统计当天和昨天固定时间段的数据,再新建字段计算同环比增长率。
0015fec677fc43ad8650637a6d3a25d
实现方法:以 MySQL 数据库为例
1. 新建计算字段,用公式统计今日任务数  
sum(
case when date([修改时间])=curdate() then 1
else 0
end)  公式有多种写法。

0015fec677fb77cec45c360b28242b7

0015fec677f9f1a987aee9e1048e402

2. 新建计算字段,用公式统计昨日任务数 (0点到昨天的当前时间点)
sum(
case when date([修改时间]) =date_sub(curdate(),interval ‘1’ day) and [修改时间]<=date_sub(now(),interval ‘1’ day) then 1
else 0
end)

0015fec677fc06acf9706f94ecf6256

3. 新建计算字段,计算增长率。

0015fec677fb28f232a35bcd248fb21

4. 把三个新建字段都拖到数值栏。

    您需要登录后才可以回复