Neo4j CQL(附springboot集成neo4j)

Neo4j CQL(附springboot集成neo4j),第1张

CQL代表Cypher查询语言。 像Oracle数据库具有查询语言SQL,Neo4j具有CQL作为查询语言。

常用的Neo4j CQL命令/条款如下:

S.No.CQL命令/条用法
1。CREATE
创建
创建节点,关系和属性
2。MATCH
匹配
检索有关节点,关系和属性数据
3。RETURN
返回
返回查询结果
4。WHERE
哪里
提供条件过滤检索数据
5。DELETE
删除
删除节点和关系
6。REMOVE
移除
删除节点和关系的属性
7。

ORDER BY

以…排序

排序检索数据
8。SET
添加或更新标签

以下是常用的Neo4j CQL函数:

S.No.定制列表功能用法
1。String
字符串
它们用于使用String字面量。
2。Aggregation
聚合
它们用于对CQL查询结果执行一些聚合 *** 作。
3。Relationship
关系
他们用于获取关系的细节,如startnode,endnode等。
Neo4j CQL - CREATE命令
CREATE (:)
语法元素描述
CREATE它是一个Neo4j CQL命令。
它是我们要创建的节点名称。
它是一个节点标签名称
Neo4j CQL创建具有属性的节点 
CREATE (
   :
   { 	
      :
      ........
      :
   }
)
语法元素描述
它是我们将要创建的节点名称。
它是一个节点标签名称
...属性是键值对。 定义将分配给创建节点的属性的名称
...属性是键值对。 定义将分配给创建节点的属性的值

create (dept:Dept{no: 10, name:"市场部", address: "成都"})

Neo4j CQL - MATCH命令
MATCH 
(
   :
)
语法元素描述
这是我们要创建一个节点名称。
这是一个节点的标签名称

match (n:Dept) return n

match必须和return一起使用

Neo4j CQL - 关系基础

CREATE (p1:Profile1)-[r1:LIKES]->(p2:Profile2)

这里p1和profile1是节点名称和节点标签名称“From Node”

p2和Profile2是“To Node”的节点名称和节点标签名称

r1是关系名称

LIKES是一个关系标签名称

Neo4j CQL - WHERE子句

match (n:Employee) where n.name = "frank" return n

 Neo4j CQL - DELETE删除
MATCH (e: Employee) DELETE e

先查询出来再删除掉。

删除指定节点的属性

MATCH (book { id:122 })

REMOVE book.price

RETURN book

Neo4j CQL - ORDER BY排序

MATCH (n:Employee) RETURN n order by n.deptno desc

UNION子句语法

   UNION

 下面就是返回两个相同的列名

MATCH (cc:CreditCard) RETURN cc.id,cc.number
UNION
MATCH (dc:DebitCard) RETURN dc.id,dc.number
UNION ALL子句

它结合并返回两个结果集的所有行成一个单一的结果集。它还返回由两个节点重复行。

MATCH (cc:CreditCard)
RETURN cc.id as id,cc.number as number,cc.name as name,
   cc.valid_from as valid_from,cc.valid_to as valid_to
UNION ALL
MATCH (dc:DebitCard)
RETURN dc.id as id,dc.number as number,dc.name as name,
   dc.valid_from as valid_from,dc.valid_to as valid_to

MATCH (n:Employee) RETURN n skip 3

skip跳过3个节点返回最后两条数据

MERGE命令是CREATE命令和MATCH命令的组合。

MERGE = CREATE + MATCH

Neo4j CQL MERGE命令在图中搜索给定模式,如果存在,则返回结果

如果它不存在于图中,则它创建新的节点/关系并返回结果。

Neo4j - 方向关系
CREATE ()-[]->()

是“From Node”节点详细信息

是“到节点”节点详细信息

relationship-details>是关系详细信息

使用一个箭头标记:() - []→()。 它表示从左侧节点到右侧节点的方向。

如果我们尝试使用相同的语法,没有箭头标记like() - [] - (),这意味着没有方向的关系。 然后Neo4j DB服务器应该抛出一个错误消息

CREATE (n1:Node1)-[r1:Relationship]->(n2:Node2)

CREATE (n1:Node3)<-[r1:Relationship]-(n2:Node2) 

Neo4J索引 *** 作
  • Create Index 创建索引
  • Drop Index 丢弃索引
  • CREATE INDEX ON :Customer (name)
Neo4j CQL - UNIQUE约束

CREATE CONSTRAINT ON (cc:CreditCard)

ASSERT cc.number IS UNIQUE

给节点creditcard的节点的number设置唯一约束

DROP CONSTRAINT ON (cc:CreditCard)
ASSERT cc.number IS UNIQUE

删除唯一约束

Neo4j CQL - 关系函数_w3cschoolNeo4j CQL提供了一组关系函数,以在获取开始节点,结束节点等细节时知道关系的细节。 在这里,我们将讨论一些重要的和经常使用的功能。关系函数列表S.No.功能描述1。STARTNODE它用于知道关系的开始节点。2。ENDNODE它用于知道关系的结束节点。3。ID它用于知道关系的ID。4。TYP_来自neo4j 教程,w3cschool编程狮。https://www.w3cschool.cn/neo4j/neo4j_cql_relationship_functions.html

springboot集成neo4j的demo 

https://gitee.com/chenxb/springboot-neo4jhttps://gitee.com/chenxb/springboot-neo4j 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/872204.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-13
下一篇 2022-05-13

发表评论

登录后才能评论

评论列表(0条)

保存