Neo4j安装及最详细用法介绍(干货)

2022-05-13  本文已影响0人  老街老街

Neo4j文档

  1. Neo4j简介
image.png
  1. Neo4j的安装

访问以下路径: https://neo4j.com/download-center/#community.这里选择社区版就可以.选择3.5.28版本.最新的版本需要JDK11才能运行

image.png

下载ZIP并解压后,进入解压目录的bin目录下.执行neo4j.bat console 命令,出现以下字符说明启动成功.

image.png

在浏览器中输入http://localhost:7474/ 进行访问.默认用户名和密码分别是neo4j neo4j.登录后提示修改密码,修改即可

  1. Neo4j的基本概念
image.png
  1. Neo4j的查询语法


    image.png
  1. 新增创建节点

(1) 语句:

create(p:PERSON {name:"Mask",age:30,heigh:180,weight:80})-[r:SON_OF]->(f:PERSON {name:"OLD_Mask",age:55,heigh:160,weight:60}) return p,r,f

(2) 创建两个节点,一个子节点Mask.一个父节点OLD_Mask.

(3) Create表示新创建.p是别名.PERSON 表示节点p的标签PERSON的属性. -[r:SON_OF]-> 表示节点p指向节点f,他们之间的关系是SON_OF,这个关系的别名是r,r可以拥有属于自己的属性

(4) return 表示执行这段语句之后,需要返回的对象,return p,r,f 表示返回 节点p,节点f,以及他们之间的关系r

(5) 返回的数据

image.png
  1. 查找指定节点、指定属性、指定关系的节点、关系

(1) 语句:

match (p:PERSON {name:"Mask"})-[r]-(n) return p,r,n

(2) return 后面的别名p还可以利用as 设置指定的返回值名称,如 p as age.

image.png

(3) 还可以添加where条件进行查询

image.png

(4) 大于30搜索不到数据

image.png
  1. 对查找结果进行排序order by,并限制返回条数 limit

(1) 语句:

match(p:Person) return p order by p.name limit 3

(2) order by关键字与SQL里面是一样的操作,后面跟上需要根据排序的关键字,limit的操作是指定输出前几条

(3) 这里利用order by来指定返回按照Person.name来排序

(4) limit 表示只返回前3条数据

image.png
  1. 节点数据的删除

(1) 删除一个节点必须将存在的关系(Relationship)同时删除掉,不然不会成功

(2) 删除一个存在关系的节点,出现报错

(3) 语句

match(p:Person {name:"name:lisi"}) delete p

image.png

(4) 删除节点同时删除关系,成功

(5) 语句

match(p:Person {name:"lisi"})-[r]-() delete p,r

image.png

(6) 先通过匹配关键字match找到匹配元素,然后通过delete关键字指定删除

  1. 删除属性remove命令

(1) remove命令是用来删除节点或者关系的属性

(2) match (p:Person { name:"lisi"}) remove p.age return p

(3) 通过match匹配到Person数据并移除age属性

  1. neo4j的字符串函数

(1) toupper,tolower,substring,replace四种字符串的操作.分别实现大写,小写,字符串分割,替换功能

(2) 转换大写

image.png

(3) 字符串切割

image.png

(4) 字符串替换

image.png
  1. 聚合函数AGGREGATION

(1) 常用的聚合函数有COUNT、MAX、MIN、AVG、SUM等五种

(2) 根据匹配的数据执行聚合函数

(3) 语句:

match(p:PERSON) return p.name as name,p.age as age,count(p) as count,max(p.age) as maxAge,min(p.age) as minAge,avg(p.age) as avgAge,sum(p.age) as sumAge

image.png
  1. Neo4j关系函数

(1) 语句

match ()-[r:SON_OF]-() return startnode(r).name as start_node, endnode(r).name as end_node,id(r) as relationship_id ,type(r) as realtionship_type


image.png
上一篇下一篇

猜你喜欢

热点阅读