此用例详细说明了如何自动识别添加到数据库中的最后一个收件人。
按照以下流程,将数据库中的收件人创建日期与使用聚合创建收件人的最后已知日期进行比较。 此外,还将选择在同一天创建的所有收件人。
执行 创建日期=最大值(创建日期) 对收件人键入过滤器,您必须运行工作流以执行以下步骤:
创建查询。 在本例中,目标是计算数据库中所有收件人的最后已知创建日期。 因此,查询不包含过滤器。
选择 Add data。
在打开的窗口中,选择 Data linked to the filtering dimension 则 Filtering dimension data.
在 Data to add 窗口,添加一个列来计算 创建日期 收件人表中的字段。 您可以使用表达式编辑器或enter max(@created) 直接放入中的字段 Expression 列。 然后单击 Finish 按钮。
单击 Edit additional data,然后单击 Advanced parameters…。勾选 Disable automatic adding of the primary keys of the targeting dimension 选项。
此选项确保不会显示所有收件人作为结果,并且不会保留明确添加的数据。 在本例中,它是指上次创建收件人的日期。
保持选中 Remove duplicate rows (DISTINCT) 选项。
要将处理收件人的查询链接到执行聚合函数计算的查询,您必须使用模式编辑活动。
将收件人的查询定义为主集。
在 Links 选项卡,添加新链接,并在窗口中输入信息,该窗口打开如下:
因此,聚合结果链接到每个收件人。
建立链接后,聚合结果和收件人将构成同一临时模式的一部分。 因此,可以在架构上创建过滤器,以比较收件人的创建日期和使用聚合函数表示的上一个已知创建日期。 此过滤器使用拆分活动执行。
在 General 选项卡,选择 收件人 作为定位维度和 编辑架构 作为筛选维度(对集客过渡模式活动进行筛选)。
在 subsets 选项卡,选择 Add a filtering condition on the inbound population 然后单击 Edit….
使用表达式编辑器,在收件人的创建日期与聚合计算的创建日期之间添加一个相等条件。
数据库中的日期类型字段通常以毫秒为单位保存。 因此,您必须将这些时间延长一整天,以避免检索仅创建该毫秒的收件人。
要执行此操作,请使用 ToDate 函数中,可将日期和小时转换为简单日期。
因此,用于标准的表达式为:
toDate([target/@created])
.toDate([datemax/expr####])
,其中expr####与聚合函数查询中指定的聚合相关。因此,拆分活动的结果与最后一个已知创建日期同一天创建的收件人有关。
然后,您可以添加其他活动(如列表更新或投放)以丰富您的工作流。