关于neo4j初入门(2)
DELETE删除
- 删除节点及相关节点和关系。
DELETE <node-name-list>
DELETE <node1-name>,<node2-name>,<relationship-name>
使用逗号(,)运算符来分隔节点名称和关系名称。
MATCH (cc:CreditCard)-[r]-(c:Customer)RETURN r 检查是否存在
MATCH (cc: CreditCard)-[rel]-(c:Customer)
DELETE cc,c,rel 删除
MATCH (cc:CreditCard)-[r]-(c:Customer) RETURN r 检查是否删除
REMOVE删除
SET子句向现有节点或关系添加新属性。
REMOVE子句来删除节点或关系的现有属性。
REMOVE <property-name-list>
<property-name-list> <属性名称列表>语法
<node-name>.<property1-name>,
<node-name>.<property2-name>,
....
<node-name>.<propertyn-name>
REMOVE <label-name-list>
<label-name-list>语法
<node-name>:<label2-name>,
....
<node-name>:<labeln-name>
SET子句
向现有节点或关系添加新属性
SET <property-name-list>
<属性名称列表>语法:
<node-label-name>.<property1-name>,
<node-label-name>.<property2-name>,
....
<node-label-name>.<propertyn-name>
例如
MATCH (dc:DebitCard)
SET dc.atm_pin = 3456
RETURN dc
Sorting排序
对MATCH查询返回的结果进行排序。
ORDER BY <property-name-list> [DESC]
MATCH (emp:Employee)
RETURN emp.empid,emp.name,emp.salary,emp.deptno
ORDER BY emp.name
UNION联盟
- 将两个不同的结果合并成一组结果
- UNION
- UNION ALL
UNION子句语法
<MATCH Command1>
UNION
<MATCH Command2>- 具有相同的属性名有不同的节点名称前缀。UNION命令显示此错误消息。为了避免这种错误,Neo4j的CQL提供“AS”子句。
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
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_toUNION ALL子句语法
<MATCH Command1>
UNION ALL
<MATCH Command2>- 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
LIMIT子句语法
LIMIT <number> 减少MATCH + RETURN查询返回的记录数
MATCH (emp:Employee)
RETURN emp
LIMIT 2
SKIP子句语法:
SKIP <number>
“SKIP”子句来过滤或限制查询返回的行数
MATCH (emp:Employee)
RETURN emp
SKIP 2
合并
MERGE命令是CREATE命令和MATCH命令的组合。
MERGE = CREATE + MATCH
Neo4j CQL MERGE语法
MERGE (<node-name>:<label-name>
{
<Property1-name>:<Pro<rty1-Value>
.....
<Propertyn-name>:<Propertyn-Value>
}) CREATE命令检查此节点是否可用,它只是在数据库中创建新节点。
MERGE命令检查该节点在数据库中是否可用。 如果它不存在,它创建新节点。 否则,它不创建新的。
我们可以说CREATE命令总是向数据库添加新的节点。CQL MERGE命令将新的节点添加到数据库,只有当它不存在。
NULL值
WHERE IS NOT NULL
这里我们使用IS NOT运算符来过滤NULL行。
IN操作符语法
IN[<Collection-of-values>]
例如
MATCH (e:Employee)
WHERE e.id IN [123,124]
RETURN e.id,e.name,e.sal,e.deptno
Neo4j数据浏览器包含两种视图来显示查询结果 -
- UI查看
- 网格视图
鼠标指针选择节点以查看其属性窗口。
此属性窗口包含两个taps:
属性选项卡 - 它显示了节点或关系的属性详细信息。
样式选项卡(Eye Symbol): - 它显示节点或关系的字体或大小选择。
ID属性
“Id”是节点和关系的默认内部属性。 这意味着,当我们创建一个新的节点或关系时,Neo4j数据库服务器将为内部使用分配一个数字。 它会自动递增。
Node id的值是递增的,并且赋值为1
- 节点的Id属性的最大值约为35亿。
- Id的最大值关系的属性的大约35亿。
Caption标题
在Neo4j数据中,当我们在Neo4j DATA浏览器中执行MATCH + RETURN命令以查看UI视图中的数据时,通过使用它们的Id属性显示节点和/或关系结果。 它被称为“CAPTION”的id属性。
我们可以通过使用它的其他属性值来更改节点或关系的CAPTION。
更改节点或Neo4j数据浏览器UI视图中的关系的“CAPTION”。
方向关系
在Neo4j中,两个节点之间的关系是有方向性的。 它们是单向或双向的。
CREATE (<node1-details>)-[<relationship-details>]->(<node2-details>)
使用一个箭头标记:() - []→()。 它表示从左侧节点到右侧节点的方向。
关于neo4j初入门(2)的更多相关文章
- 关于neo4j初入门(5)
neo4j和Java Neo4j提供JAVA API以编程方式执行所有数据库操作. 它支持两种类型的API: Neo4j的原生的Java API Neo4j Cypher Java API Neo4j ...
- 关于neo4j初入门(4)
关于admin管理员 数据库备份和恢复 Neo4j数据库备份 步骤1 -点击“Neo4j Community”,如下图所示 Windows“开始”按钮>> "All Progra ...
- 关于neo4j初入门(3)
这一章主要是函数的部分 UPPER 它需要一个字符串作为输入并转换为大写字母. UPPER (<input-string>)<input-string>可以是来自Neo4J数据 ...
- 关于neo4j初入门(1)
图形数据库也称为图形数据库管理系统或GDBMS. Neo4j的官方网站:http://www.neo4j.org Neo4j的优点 它很容易表示连接的数据 检索/遍历/导航更多的连接数据是非常容易和快 ...
- SpringBoot 初入门
SpringBoot 初入门 关于介绍什么之类的就不讲了,主要做一下学习记录. 1. 启动方式 IDEA 启动 命令行启动: mvn spring-boot:run 部署到服务器启动: 先进行打包, ...
- Neo4j安装&入门&一些优缺点
本篇将介绍Neo4j的安装,入门,和自己使用了一段时间后发现的优点缺点,争取简洁和实用. 如果你是第一次接触Neo4j,并且之前也都没接触过类似的Graph Database的话,建议先浏览一下我之前 ...
- Neo4j安装&入门&一些优缺点(转)
本篇将介绍Neo4j的安装,入门,和自己使用了一段时间后发现的优点缺点,争取简洁和实用. 如果你是第一次接触Neo4j,并且之前也都没接触过类似的Graph Database的话,建议先浏览一下我之前 ...
- Nginx - Windows下Nginx初入门
公司刚使用nginx,预先学习下.鉴于机器没有Linux环境,在Windows熟悉下. 下载 目前(2015-07-11),nginx的稳定版本是1.8.0,在官网下载先,windows版的nginx ...
- 坚持自学的第二天,bootstrap初入门
前言 昨天,初步学完了jekyll目录结构与Liquid语法的应用与认识. 日志 今天刚入门,做了一个bootstrap导航栏,但是选中状态不行,找了JS中写好的API,写法与视频中讲的有点不一样,但 ...
随机推荐
- int64 DWORD 与cstring 互转
//int64 与cstring 互转 int64_t val = 1111111111111111111; CString str; str.Format(("%I64d"), ...
- Vue与React比较
与React 相似: (1)虚拟DOM(Virtual DOM) 虚拟DOM的诞生是基于:改变真实的DOM状态远比改变一个JS对象的花销要大的多. 虚拟DOM是一个映射真实DOM的JS对象,当有变化产 ...
- Linux 内核SBus连接
当大部分计算机配备有 PCI 或 ISA 接口总线, 大部分老式的基于 SPARC 的工作站使用 SBus 来连接它们的外设. SBus 使一个非常先进的设计, 尽管它已出现很长时间. 它意图是处理器 ...
- VS code 汉化及快捷键修改
VsCode汉化方式 Vscode是一款开源的跨平台编辑器.默认情况下,vscode使用的语言为英文(us),如何将其显示语言修改成中文了? 打开vscode工具: 点击左侧的Extensions(拓 ...
- (转)学习C语言基本思路与参考书籍
计算机行业发展非常快,大学里的教育基本都跟不上实际的社会需求.如果你所在的学校还在指定大家使用谭浩强的教材,或使用VC6.0来教大家上机实验,那你不妨看看本文,这里有一些建议可以帮助你不会脱离社会太远 ...
- 什么是神经网络 (Neural Network)
反向传播: 可以看作是再一次将传过来的信号传回去, 看看这个负责传递信号神经元对于”讨糖”的动作到底有没有贡献, 让它好好反思与改正, 争取下次做出更好的贡献. 生物神经网络和人工神经网络的差别: 人 ...
- 洛谷$P2570\ [ZJOI2010]$贪吃的老鼠 网络流+二分
正解:网络流+二分 解题报告: 传送门$QwQ$ 和上一题有点儿像,,,?$QwQ$但是比上一题要有趣很多$QwQ$ 首先把大致思路捋下?依然是.二分出每个奶酪的开始和结束时间,然后check下最大流 ...
- $Poj3017\ Cut\ The\ Sequence$ 单调队列优化$DP$
Poj AcWing Description 给定一个长度为N的序列 A,要求把该序列分成若干段,在满足“每段中所有数的和”不超过M的前提下,让“每段中所有数的最大值”之和最小. N<=10 ...
- Spring Security详解
Spring Security 一. 简介 Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架.它提供了一组可以在Spring应用上下文 ...
- 【一起学源码-微服务】Ribbon 源码二:通过Debug找出Ribbon初始化流程及ILoadBalancer原理分析
前言 前情回顾 上一讲讲了Ribbon的基础知识,通过一个简单的demo看了下Ribbon的负载均衡,我们在RestTemplate上加了@LoadBalanced注解后,就能够自动的负载均衡了. 本 ...