# 3. 筛选条件
# 3.1 定义
筛选条件是为了在已经取到的数据集中,通过设置一个或多个实体属性、事件属性进行条件过滤,获取最终需要的子数据集,进而进行数据分析。猫酷BI数据分析模型中都有筛选条件选项,均可以实现根据事件的属性进行筛选或根据实体的属性进行筛选。如下图:

# 3.2 分类
# 3.2.1 按筛选目标分类
事件: 筛选条件作用于事件,即通过所选事件属性进行条件设置,如:实付金额、支付方式等。
实体: 筛选条件作用于实体(用户、店铺、卡券等),即通过实体属性进行条件设置,如:会员卡号、婚姻状态等。如下图:

# 3.2.2 按数据类型分类
# 1) 字符串(文本)类型属性
当筛选条件为字符串类型属性字段时,可以看到如下图中标识的判断类型:

关于字符串类型的属性筛选控件
| 判断类型 | 描述说明 |
|---|---|
| 精确判断,若选择的实体或事件属性等于输入的判断值时,该实体或事件才会进入分析过程 | |
| 不等于 | 精准判断,若选择的实体或事件属性等于输入的判断值时,该实体或事件不会进入分析过程 |
| 包含 | 匹配判断,当属性字段中包含判断值,该实体或事件就会进入分析过程 |
| 不包含 | 匹配判断,当属性字段中包含判断值,该实体或事件不会进入分析过程 |
| 正则匹配 | 匹配判断,只有符合正则条件的数据进入分析过程 |
| 正则不匹配 | 匹配判断,只有不符合正则条件的数据进入分析过程 |
| 有值 | 只有属性字段中值不为NULL时,实体或事件才会进入分析过程 |
| 无值 | 只有属性字段值为NULL时,实体或事件才会进入分析过程 |
| 在…之间 | 精确判断,当判断值存在多个时,实体或事件属性值等于任意一个,该实体或事件都会进入分析的数据集 |
| 不在…之间 | 精确判断,当判断值存在多个时,实体或事件属性值等于任意一个,该实体或事件就不会进入分析的数据集 |
# 2) 数值类型属性
当筛选条件为数值类型属性字段时,可以看到下图中标识的判断类型:

关于数值类型的属性筛选控件
| 判断类型 | 描述说明 |
|---|---|
| 精确判断,只有选择的实体或事件属性等于输入的判断值时,该实体或事件才会才会进入分析过程 | |
| 不等于 | 精确判断,只有选择的实体或事件属性不等于输入的判断值时,该实体或事件才会才会进入分析过程 |
| 有值 | 只有属性字段中值不为 NULL 时,实体或事件才会进入分析过程 |
| 无值 | 只有属性字段中值为 NULL 时,实体或事件才会进入分析过程 |
| 小于 | 所选属性值小于判断值的实体或事件才会进入分析过程 |
| 小于等于 | 所选属性值小于等于判断值的实体或事件才会进入分析过程 |
| 大于 | 所选属性值大于判断值的实体或事件才会进入分析过程 |
| 大于等于 | 所选属性值大于等于判断值的实体或事件才会进入分析过程 |
| 区间 | 所选属性值处于设置的判断值所形成的闭区间时,实体或事件才会进入分析流程;如判断值设置为 10 和 100 时,所选属性值需要满足 [10,100] 区间 |
# 3) 时间类型属性
当筛选条件为时间类型属性字段时,可以看到下图中标识的判断类型:

关于时间类型的属性筛选控件说明
| 判断类型 | 时间 | 描述说明 |
|---|---|---|
| 指当前所属日期,若当前日期是2020年7月18日,则今天表示2020年7月18日 | ||
| 相对时间 | 明天 | 指当前日期 + 1天,若当前日期是2020年7月18日,则明天表示2020年7月19日 |
| 相对时间 | 本月 | 指当前日期所属月份的日度区间,若当前日期是2020年7月18日,则本月表示【2020年7月1日,2020年7月18日】 |
| 相对时间 | 本年 | 指当前日期所属年份的日度区间,若当前日期是2020年7月18日,则本年表示【2020年1月1日,2020年7月18日】 |
| 相对时间 | 下周 | 指当前日期所属周+1周的日度时间区间,若当前日期是2020年7月18日(周六),则下周表示【2020年7月20日,2020年7月26日】 |
| 相对时间 | 下个月 | 指当前日期所属月份+1个自然月的日度时间区间,举个栗子:若当前日期是2020年7月18日,则下个月表示【2020年8月1日,2020年8月31日】 |
| 相对时间 | 距今大于 | 如设置距今大于3天,则表示以当前日期 + 3天为起点(不含3天后的当天)之后的时间区间,即(当前日期+3天,无穷大日期) |
| 相对时间 | 距今大于等于 | 如设置距今大于等于3天,则表示以当前日期 + 3天为起点(含3天后的当天)之后的时间区间,即【当前日期+3天,无穷大日期) |
| 相对时间 | 距今小于 | 如设置距今小于3天,则表示以当前日期 - 3天为终点(不含3天前的当天)之前的时间区间,即(无穷小日期,当前日期-3天) |
| 相对时间 | 距今小于等于 | 如设置距今小于等于3天,则表示以当前日期 - 3天为终点(含3天前的当天)之前的时间区间,即(无穷小日期,当前日期-3天】 |
| 相对时间 | 距今区间 | 如设置距今过去 5 天到过去 3 天之内,则表示以当前日期 - 5 天为起点,以当天日期 - 3 天为终点的时间区间,即【当前时间点 -5 天, 当天时间点 -3 天】 |
| 相对时间 | 晚于等于下月今日 | 指以当前日期 + 1个自然月为起点(含下个月的当天)之后的时间区间,即『当前日期+1个自然月,无穷大日期),若当前日期为3月31日,则“下月今日”指4月30日 |
| 具体时间 | 区间 | 如设置固定时间在 2020-10-01 至 2020-10-31,则所选属性时间范围在此区间(包含区间端点)的数据会进入分析过程 |
| 具体时间 | 日度区间 | 如设置固定时间在 10-01 至 10-31,则所选属性时间范围在此区间(包含区间端点)的所有年份数据会进入分析过程 |
| 具体时间 | 有值 | 只有属性字段中值不为 NULL 时,实体或事件才会进入分析过程 |
| 具体时间 | 无值 | 只有属性字段中值为 NULL 时,实体或事件才会进入分析过程 |