微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

理解 apoc.refactor.mergeNodes

如何解决理解 apoc.refactor.mergeNodes

我正在使用 apoc.refactor.mergeNodes 来合并节点。 我有 886 个节点,其属性为患者 ID 和服务日期。所有服务日期均为同年12月。 我有以下代码

CALL apoc.refactor.mergeNodes(nodes,{properties: {
pat_id:'combine',date:'combine'},mergeRels:true})

合并节点有一个包含 886 个患者 ID 的列表,但它只有 31 个日期。似乎删除了日期的任何重复值。此函数的文档说“组合”将创建一个数组,但它似乎仅通过保留唯一值来作为集合运行。 我已经搜索了各种 apoc 函数,但找不到方法来做到这一点。我还尝试为所有 886 个节点创建一个属性,该属性一个地图(例如,date_map: {pat_id:date}),但似乎您不能将地图作为属性值。

有没有办法在组合节点中保留重复值?

解决方法

您能否提供数据库结构示例,并更好地解释您的最终目标?您实际上是在尝试从多个节点中创建一个节点,还是只是在尝试从 886 个节点中收集信息(类似这样:)

MATCH (node)
RETURN DISTINCT node.pat_id as ids,collect(node.date) as dates

最好将患者节点和日期节点分开,这样就可以轻松获取每个患者的所有日期节点列表(包括重复的)。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。