1、数据库的安装和访问
从neo4j官网下载windows版文件,解压到相应目录后,在bin目录下执行:neo4j install-service 命令,把neo4j作为一个服务安装到电脑。
执行该命时,需要确保电脑上已安装了与安装的neo4j版本匹配的java环境,否则会报错。我使用的是neo4j3.5.31,java8
安装成功后,需要到服务中开启neo4j服务,然后在浏览器访问localhost:7474即可
2、名称和标签的作用
数据库是由节点和关系组成的。节点和关系都有名称和标签,那么名称和标签的具体作用是什么呢
我们可以把节点标签名称 和 关系标签名称 理解为一个数据表的名。当添加、删除、修改数据时,相当于是在操作一个表名为 (标签名称)的数据表内的数据
节点名称 和关系名称其实是一个临时变量,查询和插入数据时名称不是必须的。当我们需要返回数据时,则需要把数据赋值给一个变量,即名称。名称可以随意更改,因为它在命令执行完后,就失效了。
//添加节点,不需要名称,但不能省略冒号
create (:boy{name:'张三',age:15})
//修改节点属性,不需要名称
match(boy) where boy.age=15 set boy.height=175
<-查询,需要使用名称->
match (b:boy) reutrn b
//该查询会把所有节点和关系都查出来
match (boy) reutrn boy
//节点boy和score只参了关系的查询,不需要名称
//关系people_score需要返回数据,使用了关系名称r
match (boy)->[r:people_score]->(score) return r
//where查询,使用系统随机分配给节点的id
match (b:boy) where id(b)=1 return b
//where查询,使用节点属性
match (b:boy) where b.age=15 return b
3、常用命令
清空数据库
match (n) detach delete n
查询所有节点
MATCH (n) RETURN n
查询所有关系
MATCH ()-[r]->() RETURN r
已有节点创建关系
where条件是必须的,否则会把两个节点下所有属性一一创建对应关系,即笛卡尔积
match (a),(b) where a.name='a' and b.name='c' create (a)-[:c]->(b)
关系查询
方法1:
match (people)-[r:好]->(kl) return r
方法2:
match (people)-[r]->(kl) where (people)-[r:好]->(kl) or (people)-[r:中]->(kl) return r
|