@目录@[toc]neo4j数据库cypher查询

neo4j数据库cypher查询

1.cypher:

Cypher是一种声明式图查询语言,表达高效查询和更新图数据库。

常用的声明性语言:数据库查询语言(sql,xquery),正则表达式,编程逻辑,函数式编程和配置管理系统


声明式编程和命令式编程:

​ 声明式编程是一种编程范式,构建计算机程序的结构和元素的一种风格,它表达了计算的逻辑而没有描述其控制流程。

​ 命令式编程以明确的步骤去实现算法

2.基础查询

​ 2.1.match基础查询

match(s:school) return s limit 25

neo4j数据库cypher查询-冯金伟博客园

​ 2.2带有关系的查询

match(match(a:academy) -[:Belong_to]->(s:school) return a,s limit 15)

neo4j数据库cypher查询-冯金伟博客园

​ 2.3带有条件的关系查询

match(d:discipline)-[:Belong_to]->(a:academy) where a.academy_id="19" return d,a limit 30

neo4j数据库cypher查询-冯金伟博客园

3.多维度关联查询

​ 3.1多维度关联查询

match(p:project) -[:Be_from]->(d:discipline)-[:Belong_to]->(a:academy) where a.academy_name = "机电工程学院" return p,d,a limit 10

neo4j数据库cypher查询-冯金伟博客园

​ 3.2没有限制实体的关系查询

match n=()-[:Belong_to]-() return n limit 50

neo4j数据库cypher查询-冯金伟博客园

4.其他

​ 4.1正则查询

match (s:school) where s.school_name=~"苏.*" return s limit 10

neo4j数据库cypher查询-冯金伟博客园

​ 4.2包含查询

match (p:project) where p.project_name contains "网络" return p limit 10

neo4j数据库cypher查询-冯金伟博客园

​ 4.3创建

create (n:Loc{name:“湖北”})-[:FOOD{level:1}]->(L:Longxia{type:“小龙虾”})