Neo4j 删除除 UkPostcode 之外的所有节点和关系
Neo4j delete all nodes and relationships apart from UkPostcode
我可以用这个删除人及其关联的节点和边:
const neo4jSearchAndDestroy = await runQuery({
query: `
unwind $deletedIDs as accountId
match (p:Person{ id: accountId })-[*..3]-(c)
detach delete p, c
`,
params: {
deletedIDs: deletedIDs,
},
});
但我不想像这样删除连接到 'Person' 节点的 'Postcode' 节点:(Person)-[:PLACE]-(Postcode)
我已经尝试过 WHERE NOT
例如:
match (p:Person{ id: '08377f57-6d27-4426-bbf6-517501a23074' })-[*..3]-(c) WHERE NOT (p)-[:PLACE]-() return *
你可以试试这个:
unwind $deletedIDs as accountId
match (p:Person{ id: accountId })-[*..3]-(c)
with p,c WHERE NOT c:Postcode
detach delete p, c
我可以用这个删除人及其关联的节点和边:
const neo4jSearchAndDestroy = await runQuery({
query: `
unwind $deletedIDs as accountId
match (p:Person{ id: accountId })-[*..3]-(c)
detach delete p, c
`,
params: {
deletedIDs: deletedIDs,
},
});
但我不想像这样删除连接到 'Person' 节点的 'Postcode' 节点:(Person)-[:PLACE]-(Postcode)
我已经尝试过 WHERE NOT
例如:
match (p:Person{ id: '08377f57-6d27-4426-bbf6-517501a23074' })-[*..3]-(c) WHERE NOT (p)-[:PLACE]-() return *
你可以试试这个:
unwind $deletedIDs as accountId
match (p:Person{ id: accountId })-[*..3]-(c)
with p,c WHERE NOT c:Postcode
detach delete p, c