在上一節(jié)《Neo4J入門筆記[1]—安裝以及Cypher基本語(yǔ)法》 筆者主要分享了Neo4J的安裝已經(jīng)常用的命令。這個(gè)章節(jié)筆者分享從Neo4j里面導(dǎo)出數(shù)據(jù)到CSV。一個(gè)簡(jiǎn)單的方法,就是調(diào)用下面的存儲(chǔ)過(guò)程。
CALL apoc.export.csv.all("database-all-data.csv", {})
但是如果沒(méi)有對(duì)Neo4j的默認(rèn)配置進(jìn)行修改的話,其會(huì)報(bào)出下面的錯(cuò)誤。
Failed to invoke procedure `apoc.export.csv.all`: Caused by: java.lang.RuntimeException: Export to files not enabled, please set apoc.export.file.enabled=true in your apoc.conf
解決方法就是,在apoc.conf的配置文件里面加入下面的配置,并重新啟動(dòng)
apoc.export.file.enabled=true
再次執(zhí)行 CALL apoc.export.csv.all("database-all-data.csv", {})
,見下圖,執(zhí)行成功。
導(dǎo)出的文件在Neo4j的根目錄下import文件夾能找見,比如筆者的電腦: D:\software\26.neo4j\neo4j-community-4.4.12\import
下面是導(dǎo)出的數(shù)據(jù):
如果要查詢特定的數(shù)據(jù)集,比如下面的數(shù)據(jù)集:
CREATE (TheMatrix:Movie {title:'The Matrix', released:1999, tagline:'Welcome to the Real World'})
CREATE (Keanu:Person {name:'Keanu Reeves', born:1964})
CREATE (Carrie:Person {name:'Carrie-Anne Moss', born:1967})
CREATE (Laurence:Person {name:'Laurence Fishburne', born:1961})
CREATE (Hugo:Person {name:'Hugo Weaving', born:1960})
CREATE (LillyW:Person {name:'Lilly Wachowski', born:1967})
CREATE (LanaW:Person {name:'Lana Wachowski', born:1965})
CREATE (JoelS:Person {name:'Joel Silver', born:1952})
CREATE
(Keanu)-[:ACTED_IN {roles:['Neo']}]->(TheMatrix),
(Carrie)-[:ACTED_IN {roles:['Trinity']}]->(TheMatrix),
(Laurence)-[:ACTED_IN {roles:['Morpheus']}]->(TheMatrix),
(Hugo)-[:ACTED_IN {roles:['Agent Smith']}]->(TheMatrix),
(LillyW)-[:DIRECTED]->(TheMatrix),
(LanaW)-[:DIRECTED]->(TheMatrix),
(JoelS)-[:PRODUCED]->(TheMatrix);
查詢關(guān)系
MATCH (person:Person)-[actedIn:ACTED_IN]->(movie:Movie)
return *
如何把上面的關(guān)系導(dǎo)出到CSV文件呢?文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-515917.html
MATCH (person:Person)-[actedIn:ACTED_IN]->(movie:Movie)
WITH collect(DISTINCT person) AS people, collect(DISTINCT movie) AS movies, collect(actedIn) AS actedInRels
CALL apoc.export.csv.data(people + movies, actedInRels, "movies-actedIn.csv", {})
YIELD file, source, format, nodes, relationships, properties, time, rows, batchSize, batches, done, data
RETURN file, source, format, nodes, relationships, properties, time, rows, batchSize, batches, done, data
導(dǎo)出后,CSV文件如下:
參考文檔
https://neo4j.com/labs/apoc/4.1/export/csv/
https://neo4j.com/blog/export-csv-from-neo4j-curl-cypher-jq/#:~:text=Here%E2%80%99s%20how%20you%20do%20it%3A%20You%20can%20already,of%20a%20Cypher%20query%20to%20a%20CSV%20file.文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-515917.html
到了這里,關(guān)于Neo4J入門筆記[2]---導(dǎo)出數(shù)據(jù)為CSV的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!