清空所有数据 1 2 3 MATCH (n) OPTIONAL MATCH (n)-[r]-() DELETE n,r
索引 创建索引 1 create index on :三国演义(name)
删除索引 1 drop index on :三国演义(name)
修改索引 1 MATCH(n:三国演义) SET n:'修改后的' RETURN n
节点 新增节点 刘备 1 CREATE(n:三国演义{name:"刘备"})
关羽/张飞 1 2 3 4 5 CREATE(n:三国演义{name:"关羽"}),(m:三国演义{name:"张飞"}) CREATE(:三国演义{name:"刘备"}) CREATE(:三国演义{name:"关羽"}) CREATE(:三国演义{name:"张飞"})
删除 删除name为刘备的节点 1 MATCH(n:三国演义{name:"刘备"}) DELETE n
根据id删除 1 MATCH(n:三国演义) WHERE id(n) = 0 DELETE n
修改 修改 1 2 3 MATCH(n:三国演义) WHERE id(n) = 0 SET n.label = '修改后的' RETURN n MATCH(n:三国演义{name:"张非"}) n.name = '张飞' RETURN n
查询 查询 1 MATCH(n:三国演义) WHERE id(n) = 0 RETURN n
关系 新增关系 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 create (:三国演义{name:'关羽'})-[r:义兄]->(:三国演义{name:"刘备"}) match (n:三国演义{name:'张飞'}),(m:三国演义{name:"刘备"}) merge (n)-[r:义兄]->(m) match (n:三国演义{name: "刘备"}), (m:三国演义{name: "关羽"}) create (n) -[r:义弟]-> (m); match (n:三国演义{name: "刘备"}), (m:三国演义{name: "张飞"}) create (n) -[r:义弟]-> (m); match (n:三国演义{name: "关羽"}), (m:三国演义{name: "张飞"}) create (n) -[r:义弟]-> (m); match (n:三国演义{name: "关羽"}), (m:三国演义{name: "刘备"}) create (n) -[r:义兄]-> (m); match (n:三国演义{name: "张飞"}), (m:三国演义{name: "刘备"}) create (n) -[r:义兄]-> (m); match (n:三国演义{name: "张飞"}), (m:三国演义{name: "关羽"}) create (n) -[r:义兄]-> (m);
删除关系 1 2 match (n:三国演义{name: "张飞"})-[r:兄长]->(m:三国演义{name: "关羽"}) delete r;
修改关系 查询关系 Load导入CSV 1 2 3 4 5 6 7 8 LOAD CSV FROM 'file:///三国演义.csv' AS line CREATE (:三国演义{name:line[0], tail:line[1], relation:line[2], label:line[3]}) LOAD CSV FROM 'file:///sgrw.csv' AS line CREATE (:三国演义{name:line[0]}) LOAD CSV FROM 'file:///daochu.txt' AS line CREATE ({name:line[1]})-[r:line[3]]->(name:line[0]))
创建关系时同时创建节点 1 2 3 4 5 create (:三国演义{name:"关羽"})-[:义弟]->(:三国演义{name:"刘备"}) create (:三国演义{name:"张飞"})-[:义弟]->(:三国演义{name:"刘备"}) create (:三国演义{name:"关羽"})-[:义兄]->(:三国演义{name:"张飞"}) create (:三国演义{name:"张苞"})-[:儿子]->(:三国演义{name:"张飞"}) create (:三国演义{name:"关兴"})-[:儿子]->(:三国演义{name:"关羽"})
合并相同节点的数据 1 2 3 4 5 MATCH (n:`三国演义`) WITH n.name AS name, COLLECT(n) AS nodelist, COUNT(*) AS count WHERE count > 1 CALL apoc.refactor.mergeNodes(nodelist) YIELD node RETURN node
load导入时加上关系 1 2 3 LOAD CSV WITH HEADERS FROM "file:///三国演义.csv" AS line match (from:person{id:line.from_id}),(to:person{id:line.to_id}) merge (from)-[r:rel{property1:line.property1,property2:line.property2}]->(to)
导出数据 注意:此处的导出需要APOC 1 2 3 4 5 6 CALL apoc.export.csv.all( 'daochu.txt', //文件名和类型,也可以是daochu.csv { quotes:'none',//意思是导出的文件中没有引号,其他需求看下面图片 useTypes:true } )
安装APOC 1.下载地址 (原页面 ),对应的neo4j版本是3.5.8,下载完成后把该jar文件丢到【/plugins】文件夹下 2.在配置文件中添加配置
1 2 3 4 5 6 apoc.import.file.use_neo4j_config=true apoc.export.file.enabled=true apoc.import.file.enabled=true dbms.directories.import=import dbms.security.allow_csv_import_from_file_urls=true dbms.security.procedures.unrestricted=apoc.export.*,apoc.import.*
3.验证是否安装成功,重启neo4j后执行一下命令,打印出apoc版本为安装成功