簡體   English   中英

如何將包含布爾值的CSV導入Neo4j

[英]How to import CSV containing boolean values into Neo4j

我目前正在嘗試使用Cypher將CSV數據導入Neo4j。

不幸的是,我找不到將String(true / false)的某些列從String轉換為Boolean的方法。 當使用例如Case-When構造時,布爾值用於決定是否應創建節點。

因此,我的問題是:我在做什么錯?

數據如下:

"UUID", "Name", "IsSelectable"
"1", "Abc", 1
"2", "Def", 0

和密碼聲明:

LOAD CSV WITH HEADERS FROM 'file:///<path>' AS row
CREATE (:Category {UUID: row.UUID, Name: row.Name, IsSelectable: ???})

提前非常感謝,奧利弗

您可以使用CASE WHEN THEN ELSE END表達式。

請參閱密碼參考卡: http : //neo4j.com/docs/stable/cypher-refcard

LOAD CSV WITH HEADERS FROM 'file:///<path>' AS row
CREATE (:Category {UUID: row.UUID, Name: row.Name, 
       IsSelectable: (case row.IsSelectable when 1 then true else false end)})
(case row.IsSelectable when 1 then true else false end)

所有值的結果均為假。 應該:

(case row.IsSelectable when '1' then true else false end)

由於LOAD CSV僅讀取字符串。

您可以使用toBoolean將1/0 toBoolean轉換為true / false

LOAD CSV WITH HEADERS FROM 'file:///<path>' AS row
CREATE (:Category {
    UUID: row.UUID, 
    Name: row.Name, 
    IsSelectable: toBoolean(row.IsSelectable)
})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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