我有一个密码查询返回一个相当大的图,有不同的节点标签和关系类型。我想通过只检索节点和关系的有用属性来优化它的网络负载。
如何过滤节点和关系属性的Map而不改变图形路径?即保留每个元素(节点和关系),但是对于每个返回的节点或关系,根据标签只获取其属性的子集。
例如:对于每个:个人只返回名字、姓氏和出生日期对于每个:业务只返回ID和邮政编码对于类型为WORK_AT的每个关系返回工作标题和开始日期。
注:在本例中,有些节点是多标签的,它可能是一个人的企业,具有两个标签:Person:Business,并且这些节点应该返回个人和公司的属性集。
1条答案
按热度按时间46scxncf1#
可以使用APOC函数返回virtual nodes或relationships及其属性的子集。
基于电影图的示例
将返回只有名称的Person节点和只有标题的Movie节点
您需要了解这方面的某些限制:
apoc.create.virtual.fromNode
将生成节点对象,但节点的id
将为-id(originalNode) - 1
(此处引用)ids
将是随机负数,如果知道id很重要,可以将其作为计算值添加到关系的属性中,例如:然后生产