本文转自测试人社区,原文链接:https://ceshiren.com/t/topic/32359#neo4j-12
简介
- Neo4j是一个高性能的NoSQL图形数据库,它将结构化数据存储在网络上,而不是表中。
- 其特点有:
- 非关系型数据库;
- NoSQL;
- CQL;
- 遵循SQL语法,简单且人性化。
安装与使用
- 安装与使用:
- 运行Neo4j:
neo4j console
- 输入默认账号密码:
neo4j
- 修改账号密码;
- 创建标签节点:
- 打开浏览器;
- 创建emp节点,标签为Employee;
create(emp:Employee)
- 创建XiaoHong节点,带有属性;
CREATE(XiaoHong:People{no:1,age:10,gender:"M"})
- 节点:
- 添加属性:
- 创建带属性的节点;
CREATE(book:Book{title:"book1",pages:340,price:251})
- 添加属性;
match(book{title:"book1"})
set book.name = "hello"
return book
- 查询:
- 检索节点的age属性;
- MATCH需要与RETURN一起使用。
MATCH(XiaoHong:People)
RETURN XiaoHone.age
- 检索节点的所有属性;
- MATCH与RETURN不能单独使用。
MATCH(XiaoHong:People)
RETURN XiaoHong
- 关系:
- 创建关系;
CREATE(p1:Profile1)-[r1:LIKES]->(p2:Profile2)
- 删除节点和关系:
- 删除相应属性下的节点;
MATCH(e:People) DELETE e
- 删除带有关系的节点;
MATCH(cc:Profile1)-[friends]->(c:Profile2)
DELETE cc,c,Friends
- 删除属性:
match (book{title:"book1"})
remove book.price
return book
- delete与remove
- delete操作用于删除节点和关联关系;
- remove操作用于删除标签和属性。
补充知识点
- 删除标签:
MATCH (m:Movie)
REMOVE m:Picture
- 排序:
MATCH (emp:Employee)
RETURN emp.empid,emp.name,emp.salary,emp.deptno
ORDER BY emp.name DESC
- 更高级的查询:
MATCH (emp:Employee)
WHERE emp.name = 'Abc'
RETURN emp