[英]CSV file with no headers in neo4j
我有一个 CSV 文件,它具有类似的数据模式,如下所示
1,2,3,4,5,6
7,8,9,1,2,3
4,5,6,7,8,9
1,2,3,4,5,6
7,8,9,1,2,3
4,5,6,7,8,9
然后我使用了以下 Cypher 查询
CREATE CONSTRAINT ON (t:Timestamp) ASSERT t.date IS UNIQUE;
LOAD CSV FROM "file:///example.csv" AS line
MERGE (t:Timestamp) ON CREATE SET t.date: timestamp(), data:split(line,",")})
所以基本上我想将 CSV 文件中的数据存储为数组列表应该出现以下 json 格式
{
"date" = "271020170000"
"data" = [[1,2,3,4,5,6],
[7,8,9,1,2,3],
[4,5,6,7,8,9],
[1,2,3,4,5,6],
[7,8,9,1,2,3],
[4,5,6,7,8,9]]
}
还有一个问题是关于时间戳的,它给了我错误。 我想让时间戳出现在上传新数据时。
感谢我的 Cypher 代码中的任何更改。
这根本行不通 - 如果您尝试在 neo4j 中存储多维数组,您最终会看到:
包含集合的集合不能存储在属性中。
所以,你有两个选择。 您可以存储一个不是多维的平面数组,执行如下操作:
MERGE (t:Timestamp { load: "thistle" })
ON CREATE SET t.date: timestamp()
SET t.data = t.data + split(line,",")
第二种选择是根本不使用数组,这是我推荐的。 无论数据是什么,您都需要一个更好的图形模型(您还没有真正指定)。 考虑将这些值分解为多个节点以及它们之间的一组关系。 这将使加载数据变得更加容易,并为您带来好处,即它可以利用 neo4j 做得很好的东西并且更容易查询。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.