使用多对多关系进行查询 querying-using-a-many-to-many-relationship
在本例中,我们要恢复过去7天内未联系的收件人。 此查询涉及所有投放。
此示例还说明如何配置与选择收集要素(或橙色节点)相关的过滤器。 收藏集元素在 Field to select 窗口中可用。
-
需要选择哪个表?
收件人表(nms:recipient)
-
要为输出列选择的字段
主键、姓氏、名字和电子邮件
-
根据过滤信息的标准
基于今天之前7天的收件人投放日志
应用以下步骤:
-
打开通用查询编辑器并选择收件人表 (nms:recipient)。
-
在 Data to extract 窗口中,选择 Primary key、First name、Last name 和 Email。
-
在排序窗口中,按字母顺序对名称排序。
-
在 Data filtering 窗口中,选择 Filtering conditions。
-
在 Target element 窗口中,用于提取过去7天没有跟踪日志的用户档案的过滤条件包括两个步骤。 您需要选择的元素是多对多链接。
-
首先,为前 Value 列选择 Recipient delivery logs (broadlog) 收藏集元素(橙色节点)。
选择 do not exist as 运算符。 无需在此行中选择第二个值。
-
第二过滤条件的内容取决于第一过滤条件。 此处,Event date 字段直接在 Recipient delivery logs 表中提供,因为存在指向此表的链接。
选择包含 greater than or equal to 运算符的 Event date。 选择 DaysAgo (7) 值。 为此,请单击 Value 字段中的 Edit expression。 在 Formula type 窗口中,选择 Process on dates 和 Current date minus n days,并提供“7”作为值。
筛选器条件已配置。
-
-
在 Data formatting 窗口中,将姓氏切换为大写。 单击 Transformation 列中的 Last name 行,然后在下拉菜单中选择 Switch to upper case。
-
使用 Add a calculated field 函数在数据预览窗口中插入列。
在本例中,添加一个计算字段,将收件人的名字和姓氏添加到单列中。 单击 Add a calculated field 函数。 在 Export calculated field definition 窗口中,输入标签和内部名称,然后选择 JavaScript Expression 类型。 然后输入以下表达式:
code language-none var rep = source._firstName+" - "+source._lastName return rep
单击 OK。已配置 Data formatting 窗口。
有关添加计算字段的更多信息,请参阅此章节。
-
结果显示在 Data preview 窗口中。 过去7天内未联系的收件人按字母顺序显示。 名称以大写显示,并且已创建具有名字和姓氏的列。