关于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,写法与视频中讲的有点不一样,但 ...
随机推荐
- Linux 字节序
小心不要假设字节序. PC 存储多字节值是低字节为先(小端为先, 因此是小端), 一些高 级的平台以另一种方式(大端)工作. 任何可能的时候, 你的代码应当这样来编写, 它不在 乎它操作的数据的字节序 ...
- 托管exe文件的加载和执行
托管exe文件被启动的时候,首先被PE Loader载入.PE Loader载入exe文件之后,会分析PE文件头的data directory table,如果CLR_Header内的值不为0,表示该 ...
- 游戏《Minecraft》或其他应用程序 实现 自动更新 客户端版本
本渣又来写(水)博客了. 先说一下,我这个解决方案的安全性并不是企业级的,咱们就是一群穷开服的Minecraft玩家. 如果你要投入到企业级应用(容易被黑客攻击的场景),请自己写,思路凑合看看.不然安 ...
- Xgboost参数调节
转自:https://segmentfault.com/a/1190000014040317 整体: # 1.调试n_estimators cv_params = {'n_estimators': [ ...
- Python程序执行顺序
#示例代码基于py3.6 一直对Python程序的执行顺序有些疑惑,例如python程序是顺序执行的,那怎么还有main函数的出现呢? 在查阅了资料后,参见这里后,算是有点明白了: 1.python程 ...
- VRChat之blender教程
推荐先看:VRChat模型制作及上传总篇(包含总流程和所需插件):https://www.cnblogs.com/raitorei/p/12015876.html 0.设置中文,安装cat插件 注意 ...
- TCP/IP|| 建立连接或终止
1.TCP是一个面向连接的协议,在双方发送数据时需要之间建立连接. 当使用telnet命令是连接对应的端口产生TCP连接,通过tcpdump命令查看TCP报文段的输出 源>目的:标志 在标识中有 ...
- 只用这 6 个字符,就可以写出任意 JavaScript 代码!
你可能在网上见过有人用 几个不同的字符写的各种稀奇古怪的 JavaScript 代码,虽然看起来奇怪,但是能正常运行!比如这个: (!(~+[])+{})[--[~+""][+[] ...
- Ubuntu 18.04 64位安装tensorflow-gpu
第一步(可直接跳到第二步):安装nvidia显卡驱动 linux用户可以通过官方ppa解决安装GPU驱动的问题.使用如下命令添加Graphic Drivers PPA: 1 sudo add-apt- ...
- $Noip2018/Luogu5019/Luogu1969$ 铺设道路
$Luogu$ 去年$Noip$的时候我并没有做过原题,然后考场上也没有想出正解,就写了个优化了一点的暴力:树状数组+差分,然后就$A$了$ovo$. $Sol$ 只要$O(N)$扫一遍,只要当前值比 ...