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_to
  • UNION 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)的更多相关文章

  1. 关于neo4j初入门(5)

    neo4j和Java Neo4j提供JAVA API以编程方式执行所有数据库操作. 它支持两种类型的API: Neo4j的原生的Java API Neo4j Cypher Java API Neo4j ...

  2. 关于neo4j初入门(4)

    关于admin管理员 数据库备份和恢复 Neo4j数据库备份 步骤1 -点击“Neo4j Community”,如下图所示 Windows“开始”按钮>> "All Progra ...

  3. 关于neo4j初入门(3)

    这一章主要是函数的部分 UPPER 它需要一个字符串作为输入并转换为大写字母. UPPER (<input-string>)<input-string>可以是来自Neo4J数据 ...

  4. 关于neo4j初入门(1)

    图形数据库也称为图形数据库管理系统或GDBMS. Neo4j的官方网站:http://www.neo4j.org Neo4j的优点 它很容易表示连接的数据 检索/遍历/导航更多的连接数据是非常容易和快 ...

  5. SpringBoot 初入门

    SpringBoot 初入门 关于介绍什么之类的就不讲了,主要做一下学习记录. 1. 启动方式 IDEA 启动 命令行启动: mvn spring-boot:run 部署到服务器启动: 先进行打包, ...

  6. Neo4j安装&入门&一些优缺点

    本篇将介绍Neo4j的安装,入门,和自己使用了一段时间后发现的优点缺点,争取简洁和实用. 如果你是第一次接触Neo4j,并且之前也都没接触过类似的Graph Database的话,建议先浏览一下我之前 ...

  7. Neo4j安装&入门&一些优缺点(转)

    本篇将介绍Neo4j的安装,入门,和自己使用了一段时间后发现的优点缺点,争取简洁和实用. 如果你是第一次接触Neo4j,并且之前也都没接触过类似的Graph Database的话,建议先浏览一下我之前 ...

  8. Nginx - Windows下Nginx初入门

    公司刚使用nginx,预先学习下.鉴于机器没有Linux环境,在Windows熟悉下. 下载 目前(2015-07-11),nginx的稳定版本是1.8.0,在官网下载先,windows版的nginx ...

  9. 坚持自学的第二天,bootstrap初入门

    前言 昨天,初步学完了jekyll目录结构与Liquid语法的应用与认识. 日志 今天刚入门,做了一个bootstrap导航栏,但是选中状态不行,找了JS中写好的API,写法与视频中讲的有点不一样,但 ...

随机推荐

  1. Linux 字节序

    小心不要假设字节序. PC 存储多字节值是低字节为先(小端为先, 因此是小端), 一些高 级的平台以另一种方式(大端)工作. 任何可能的时候, 你的代码应当这样来编写, 它不在 乎它操作的数据的字节序 ...

  2. 托管exe文件的加载和执行

    托管exe文件被启动的时候,首先被PE Loader载入.PE Loader载入exe文件之后,会分析PE文件头的data directory table,如果CLR_Header内的值不为0,表示该 ...

  3. 游戏《Minecraft》或其他应用程序 实现 自动更新 客户端版本

    本渣又来写(水)博客了. 先说一下,我这个解决方案的安全性并不是企业级的,咱们就是一群穷开服的Minecraft玩家. 如果你要投入到企业级应用(容易被黑客攻击的场景),请自己写,思路凑合看看.不然安 ...

  4. Xgboost参数调节

    转自:https://segmentfault.com/a/1190000014040317 整体: # 1.调试n_estimators cv_params = {'n_estimators': [ ...

  5. Python程序执行顺序

    #示例代码基于py3.6 一直对Python程序的执行顺序有些疑惑,例如python程序是顺序执行的,那怎么还有main函数的出现呢? 在查阅了资料后,参见这里后,算是有点明白了: 1.python程 ...

  6. VRChat之blender教程

    推荐先看:VRChat模型制作及上传总篇(包含总流程和所需插件):https://www.cnblogs.com/raitorei/p/12015876.html 0.设置中文,安装cat插件 注意  ...

  7. TCP/IP|| 建立连接或终止

    1.TCP是一个面向连接的协议,在双方发送数据时需要之间建立连接. 当使用telnet命令是连接对应的端口产生TCP连接,通过tcpdump命令查看TCP报文段的输出 源>目的:标志 在标识中有 ...

  8. 只用这 6 个字符,就可以写出任意 JavaScript 代码!

    你可能在网上见过有人用 几个不同的字符写的各种稀奇古怪的 JavaScript 代码,虽然看起来奇怪,但是能正常运行!比如这个: (!(~+[])+{})[--[~+""][+[] ...

  9. Ubuntu 18.04 64位安装tensorflow-gpu

    第一步(可直接跳到第二步):安装nvidia显卡驱动 linux用户可以通过官方ppa解决安装GPU驱动的问题.使用如下命令添加Graphic Drivers PPA: 1 sudo add-apt- ...

  10. $Noip2018/Luogu5019/Luogu1969$ 铺设道路

    $Luogu$ 去年$Noip$的时候我并没有做过原题,然后考场上也没有想出正解,就写了个优化了一点的暴力:树状数组+差分,然后就$A$了$ovo$. $Sol$ 只要$O(N)$扫一遍,只要当前值比 ...