我有一个Cypher查询,我想用关联列表保存用户广告系列。所以我有两件事要做,首先保存广告系列,然后添加与关联列表的关系。我已经完成了这个。但是我希望改进我的查询,就像用户发送了无效数据库中的无效列表一样,那么就不会创建任何广告系列。我的查询如下:
MERGE (c:Campaigns { campaign_params: '${campaign_params_value}' } )
WITH c as c, c as c1
UNWIND {list} as att
MATCH(pl: List {id: att.listId })
WITH pl as pl, att as att, c as c, c as c1
MERGE (pl)-[buc:LIST_CAMPAIGN {templateId: att.templateId}]->(c1)
RETURN c
如果list
为空或数据无效,则仍会创建广告系列,但不会创建LIST_CAMPAIGN
关系。所以我想要的是,如果提供了任何无效或空列表,那么就不会创建任何广告系列。
有什么建议吗?提前致谢。