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

如何返回与另一个节点同名但具有特定标签的节点?新4J

如何解决如何返回与另一个节点同名但具有特定标签的节点?新4J

我正在处理财务数据,我想在作为行项目同义词的名称与与该同义词同名但位于与该同义词无关的单独节点中的另一个节点之间找到名称匹配同义词图并具有需要定义的指定属性类型。

这是一些数据:

get

所以Test3和Test1的属性格式存储的值是一样的,只是属性标签不同。如何通过使用 Test1 和/或 Test2 进行查询,从 Test3 的 value 属性中返回“x”?我知道这是一个奇怪的问题,由于保密原因,我无法说明我为什么这样做,但如果有人可以提供任何帮助,这将是最重要的。提前致谢。

解决方法

您可以使用 EXISTS。在返回Test3 的值之前,它会检查Test1 和Test2 之间是否存在连接。然后,您可以在查询中设置一个条件,即 Test3.value = 'x'。根据您的输入值,您的查询将如下所示;

给定 Test1.name ='x' 和 Test2.name = 'y'

 MATCH (n:Test3 {value: 'x'})
 WHERE EXISTS ( (:Test1 {name: "x"})-[:syn_of]->(:Test2 {name: "y"}) )
 RETURN n

使用 WITH 子句,您有一个变量 nameTest1 并将其分配给 Test3.value

给定 Test2.name = 'y'

MATCH (n:Test1)-[:syn_of]->(:Test2 {name: "y"})
WITH n.name as nameTest1
MATCH (n3:Test3 {value: nameTest1 })
RETURN n3

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