gpt4 book ai didi

neo4j - Cypher:从已删除的关系中获取信息

转载 作者:行者123 更新时间:2023-12-01 22:37:41 25 4
gpt4 key购买 nike

MATCH (n:Topic { mongoId: {_id} })-[r]-() DELETE n,r RETURN r;

这将返回错误“错误:关系 1509 已被删除”。

但是,我需要 r.mongoId 来删除另一个数据库中的条目。

如何使用 Neo4j 2.2.3 执行此操作?

我通过 Seraph library 执行此操作。有没有办法收集属性、删除关系并返回集合?

我只需要这些数据:MATCH (n:Topic { mongoId: _id })-[r]-() RETURN COLLECT(r.mongoId);

谢谢!

最佳答案

在删除节点和关系之前,您可以使用 WITH 子句为要返回的数据设置别名。像这样的事情:

MATCH (n:Topic {mongoId: {_id} })-[r]-() 
WITH r.mongoId as docId, n,r
DELETE n,r
RETURN docId

或者您可以将其分解为两个查询,一个用于检索所需的属性,然后第二个用于删除关系和节点。

编辑:您很可能希望指定定向关系以避免返回重复的 docId 属性:

MATCH (n:Topic {mongoId: {_id} })-[r]->()
...

关于neo4j - Cypher:从已删除的关系中获取信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31124541/

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