gpt4 book ai didi

neo4j - 如何从浏览器中的先前结果中恢复数据?

转载 作者:行者123 更新时间:2023-12-01 09:49:41 34 4
gpt4 key购买 nike

我有一个在 neo4j 网络浏览器中运行的查询:

MATCH p=(z)<-[*]-(a)-[:foo]->(b) WHERE b.value = "bar" return p

这返回了大量连接的节点。发生的事情似乎删除了所有这些节点(在一个单独的事件中),但我仍然有旧查询的输出。浏览器的代码部分列出了响应数据:
 ...
"graph": {
"nodes": [
{
"id": "1148578",
"labels": [
"text"
],
"properties": {
"value": "bar",
"timestamp": 1478747946867
}
},
...

有没有办法让我从旧查询的输出中重新创建所有这些数据?

最佳答案

您可以使用 apoc.load.json 去做这个。请注意,此解决方案不会保留内部节点 ID。 APOC 是一个扩展内置 Neo4j 功能的过程库。

给定 JSON 文件

{"graph": {
"nodes": [
{
"id": "32496",
"labels": [
"Person"
],
"properties": {
"born": 1967,
"name": "Carrie-Anne Moss"
}
},
{
"id": "32505",
"labels": [
"Movie"
],
"properties": {
"tagline": "Evil has its winning ways",
"title": "The Devil's Advocate",
"released": 1997
}
},
{
"id": "32494",
"labels": [
"Movie"
],
"properties": {
"tagline": "Welcome to the Real World",
"title": "The Matrix",
"released": 1999
}
},
{
"id": "32495",
"labels": [
"Person"
],
"properties": {
"born": 1964,
"name": "Keanu Reeves"
}
}
],
"relationships": [
{
"id": "83204",
"type": "ACTED_IN",
"startNode": "32495",
"endNode": "32505",
"properties": {
"role": "Kevin Lomax"
}
},
{
"id": "83183",
"type": "ACTED_IN",
"startNode": "32496",
"endNode": "32494",
"properties": {
"role": "Trinity"
}
},
{
"id": "83182",
"type": "ACTED_IN",
"startNode": "32495",
"endNode": "32494",
"properties": {
"role": "Neo"
}
}
]
}
}
}

我们可以使用以下查询重新创建图形:
CALL apoc.load.json("https://dl.dropboxusercontent.com/u/67572426/small_movie_graph.json") YIELD value AS row
WITH row, row.graph.nodes AS nodes
UNWIND nodes AS node
CALL apoc.create.node(node.labels, node.properties) YIELD node AS n
SET n.id = node.id
WITH row
UNWIND row.graph.relationships AS rel
MATCH (a) WHERE a.id = rel.startNode
MATCH (b) WHERE b.id = rel.endNode
CALL apoc.create.relationship(a, rel.type, rel.properties, b) YIELD rel AS r
RETURN *

关于neo4j - 如何从浏览器中的先前结果中恢复数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40532812/

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