gpt4 book ai didi

Neo4j 返回某个子图中存在的所有节点和关系

转载 作者:行者123 更新时间:2023-12-01 00:27:08 27 4
gpt4 key购买 nike

我想指定一个节点并返回该节点拥有的所有关系,以及连接其余节点的所有其他关系。

我想返回的示例是:

Eric, PARENT_OF, Mia
Eric, PARENT_OF, Peter
Mia, SIBLING_OF, Peter
Mia, SPOUSE_OF, Mark
...

假设指定的节点是Eric,他们查询应该返回所有与他直接连接的关系以及与Eric没有连接但是是连接到他的一些连接节点。

最佳答案

我已经用这个数据集模拟了你的场景:

CREATE (eric:Person {name:'Eric'})
CREATE (mia:Person {name:'Mia'})
CREATE (peter:Person {name:'Peter'})
CREATE (mark:Person {name:'Mark'})
CREATE (eric)-[:PARENT_OF]->(mia)
CREATE (eric)-[:PARENT_OF]->(peter)
CREATE (mia)-[:SIBLING_OF]->(peter)
CREATE (mia)-[:SPOUSE_OF]->(mark)

下面的查询应该可以实现您的目标:

MATCH (root:Person {name:'Eric'})-[r*1..3]->(a:Person)
UNWIND r AS rs
RETURN DISTINCT startNode(rs).name, type(rs), endNode(rs).name

结果:

╒════════════════════╤════════════╤══════════════════╕
│"startNode(rs).name"│"type(rs)" │"endNode(rs).name"│
╞════════════════════╪════════════╪══════════════════╡
│"Eric" │"PARENT_OF" │"peter" │
├────────────────────┼────────────┼──────────────────┤
│"Eric" │"PARENT_OF" │"Mia" │
├────────────────────┼────────────┼──────────────────┤
│"Mia" │"SIBLING_OF"│"peter" │
├────────────────────┼────────────┼──────────────────┤
│"Mia" │"SPOUSE_OF" │"Mark" │
└────────────────────┴────────────┴──────────────────┘

关于Neo4j 返回某个子图中存在的所有节点和关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44890497/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com