第11天知识点:获取时间与时间差。
相信你肯定遇到过以下一种或几种场景:
(1)想统计一下入职2年以上的员工名单。
(2)员工太多了,记不住每个员工的生日,想知道一周后过生日的员工名单。
(3)项目快到期了,想对距到期时间小于3天的项目设置提醒。
下面就以前面两个场景为例,看看怎样去实现吧。
数据表:员工信息表
包含字段:员工号、员工姓名、入职日期、出生日期
需求:
统计入职2年以上的员工名单。
分析:
计算【当前时间】与【入职时间】之间的时间差(年维度),过滤时间差>2的数据。
操作步骤:
(1)点击【更多】-【时间差】,列名命名为【司龄】,时间差=【当前时间】-【入职时间】,时间差单位选择“年”
(2)点击【过滤】,选择【司龄】大于2
需求:
统计一周后过生日的员工名单。
分析:
将today()+7计算一周后日期,然后与【出生日期】一起将年月日格式均调整成月日格式,再判断调整后二者的时间是否相等,过滤出相等的数据。
操作步骤:
(1)新增公式列,命名【一周后时间】,公式栏为:today()+7,点击确定。
(注:today()是系统时间,比如,现在的系统时间为2024年5月25日,那么一周后就是2024年6月1日)
(2)点击【更多】-【获取时间】,获取【一周后时间】的“月日”
(3)点击【更多】-【获取时间】,获取【出生日期】的“月日”
(4)点击新增公式列,列名命名为【日期是否一致】,【出生日期(月日)】=【一周后时间(月日)】
(5)点击【过滤】,选择【日期是否一致】=1
可以直接用获取时间差,通过【出生日期】-【当前日期】得到间隔天数,然后筛选出等于7天的数据吗?
答:不可以。因为【出生日期】与【当前日期】都是年月日维度,而生日是通过月日维度来判断的,需要先去掉年维度。
第(2)、(3)步获取月日维度的日期后,第(4)步能否直接用获取时间差来计算两个日期间的间隔天数呢?
答:不可以。因为获取日期中单位使用【月日】的话,结果是文本值,是无法直接进行计算的。
【时间差】可选择的单位有:年、季度、月、天、时、分、秒
【获取时间】可选择的单位有:年、季度、月、月日、星期、日、周数、时、分、秒、年季度、年月、年周数、年月日、年月日时、年月日时分、年月日时分秒
时间差一般在数据处理中会经常用到,但也很容易因为格式等一些问题经常出错,有了【获取时间】和【时间差】这两个功能,是不是对时间处理起来就容易很多呢?
今天的学习内容就到这里,感兴趣的小伙伴自己动手试一试吧! |