历史版本3 :判断某日期字段是否在指定时间段内 返回文档
编辑时间:
内容长度:图片数:目录数:
修改原因:
1. 概述编辑
1.1 预期效果
用户有时需要判断某个时间字段是否在指定时间段内,例如,需要判断「开票时间」是否在「开票时间」和「发货时间」之间,如下图所示:
1.2 实现思路
分别计算「发货时间」与「入账时间」时间差、「开票时间」与「入账时间」时间差、「发货时间」与「开票时间」时间差;
使用 IF 判断,如果「发货时间」与「入账时间」时间差同时大于另外两个时间差,则「开票时间」在「入账时间」和「发货时间」之间。
2. 操作步骤编辑
示例数据:判断时间.xlsx
上传 Excel 数据集至 FineBI 中,如下图所示:
2.1 创建自助数据集
添加自助数据集,选择 Excel 数据集,并勾选所有字段,如下图所示:
2.2 判断时间
点击「+」,添加「新增列」,如下图所示:
命名新增列为「判断结果」,输入公式IF(AND(DATEDIF(入账时间,发货时间,"D")>(DATEDIF(开票时间,发货时间,"D")),DATEDIF(入账时间,发货时间,"D")>DATEDIF(开票时间,入账时间,"D")),"是","否"),点击「确定」,如下图所示:
注:公式框中的函数、字段都需要点击左侧的选择区域选择,不能手动输入。
公式说明:
公式 | 说明 |
---|---|
DATEDIF(入账时间,发货时间,"D") | 计算「入账时间」和「发货时间」之间的时间差天数 |
AND(DATEDIF(入账时间,发货时间,"D")>(DATEDIF(开票时间,发货时间,"D")),DATEDIF(入账时间,发货时间,"D")>DATEDIF(开票时间,入账时间,"D")) | 「发货时间」与「入账时间」之间的时间差天数同时大于另外两个时间差天数,则返回TRUE,否则返回FALSE |
IF(AND(DATEDIF(入账时间,发货时间,"D")>(DATEDIF(开票时间,发货时间,"D")),DATEDIF(入账时间,发货时间,"D")>DATEDIF(开票时间,入账时间,"D")),"是","否") | 如果为TRUE,则输出"是",否则输出"否" |
2.3 效果查看
详情参见本文 1.1 节。