簡體   English   中英

在neo4j中沒有標題的CSV文件

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM