Neo4j是: ·一个开源 ·无Schema ·没有SQL ·图形数据库
该篇文章主要内容包括:
1.Neo4j CQL - SET命令:
2.Neo4j CQL - Sorting排序:
3.Neo4j CQL - UNION联盟:
4.Neo4j CQL - LIMIT和SKIP子句:
5.Neo4j CQL - 合并:
6.Neo4j CQL - NULL值:
7.Neo4j CQL - IN操作符:
8.Neo4j CQL - 图形字体
9.Neo4j - ID属性
10..Neo4j - 方向关系
1.Neo4j CQL - SET命令:
·向现有节点或关系添加新属性
·更新现有节点或关系的属性值
SET子句语法
语法: SET <property-name-list>
语法: SET 属性名列表
<property-name-list>语法
先查看一个节点已存在的属性,然后给这个节点添加新属性price<node-label-name>.<property1-name>,
<node-label-name>.<property2-name>,
......
<node-label-name>.<propertyn-name>
添加新属性
为这个节点添加新属性price=100更新属性值
将属性price,更新为9982.Neo4j CQL - Sorting排序:
·MATCH 搭配 ORDER BY 对返回的结果排序
·默认是升序,降序需使用DESC子句
ORDER BY子句语法
先查看Movie标签节点的三个属性title、tagline、released 按照title排序 按照released排序 按照released降序排序语法: ORDER BY <property-name-list> [DESC]
语法: ORDER BY 属性名列表 [DESC]
3.Neo4j CQL - UNION联盟:
·它将两组结果中的公共行组合并返回到一组结果中。 避免重复行返回
·限制: 列名称应该相同,列的数据类型应该相同
UNION子句语法
<MATCH Command1>
UNION
<MATCH Command2>
UNION ALL子句
它结合并返回两个结果集的所有行成一个单一的结果集。 它返回两节点的重复行
UNION ALL子句语法
<MATCH Command1>
UNION ALL
<MATCH Command2>
先自己创建一些节点
CREATE(p:Person {name:"布口袋_天晴了1",sex:"男",age:18})
CREATE(p:Person {name:"布口袋_天晴了2",sex:"男",age:16,school:"CQUPT"})
CREATE(p:Person {name:"布口袋_天晴了2",sex:"男",age:16,school:"CQUPT"})
CREATE(p:Person {name:"布口袋_天晴了2",sex:"男",age:16,school:"CQUPT"})
CREATE(p:Person {name:"布口袋_天晴了3",sex:"男",age:26,school:"CQUPT",school:"YANSHAN"})
当创建两个属性名一样时,该属性也只在数据库中存了一个值 匹配查询1 匹配查询2 UNION ALL 不去重复 UNION 去重4.Neo4j CQL - LIMIT和SKIP子句:
·LIMIT子句用来过滤或限制查询返回的行数,它修剪结果集定部的结果。
LIMIT子句语法
语法: LIMIT <number>
语法: LIMIT 数量
SKIP子句语法 (目前这个语法不管用)
LIMIT 2 SKIP 2 没起作用语法: SKIP <number>
语法: SKIP 数量
5.Neo4j CQL - 合并:
Neo4j 使用CQL MEGER命令
·创建节点,关系,属性
·为从数据库检索数据
MERGE = CREATE +MATCH
Neo4j CQL MEGER命令在图中搜索给定模式,如果存在,则返回结果。如果不存在,则它创建新的节点、关系并返回结果。
Neo4j CQL CREATE命令总是向数据添加新的节点。
Neo4j CQL MERGE命令将新的节点添加到数据库,只有当它不存时。
MERGE语法
MERGE = MATCH + CREATE 有,就不新建,返回;没有,就新建,返回MERGE(<node-name>:<label-name> {<property1-name>:<property1-value>,
......
<propertyn-name>:<propertyn-value>})
6.Neo4j CQL - NULL值:
Neo4j CQL将空值视为对节点或关系的属性的缺失值或未定义值。
name born age过滤掉name为NULL的项
WHERE p.name IS NOT NULL 过滤掉名字属性为NULL的项过滤判断条件:
WHERE xxx IS NULL
WHERE xxx IS NOT NULL
7.Neo4j CQL - IN操作符:
IN运算符,提供值的集合。
IN操作符语法
查询,返回 IN[ ] 从这里面选择语法: IN[<Collection-of-values>]
8.Neo4j CQL - 图形字体:
9.Neo4j - ID属性:
在Neo4j中,“Id”是节点和关系的默认内部属性。 这意味着,当我们创建一个新的节点或关系时,Neo4j数据库服务器将为内部使用分配一个数字。 它会自动递增。
10.Neo4j - 方向关系:
语法上的方向: () - [] -> ()
参考文章:
网友评论