Neo4j笔记(二)Cypher(6)UNWIND和FOREACH
unwind是cypher提供的一种列表遍历工具,类似于python中的for循环,unwind结合case等语法可以写出许多复杂的查询,尤其是对于路径查询的处理。foreach也是cypher提供的一个列表遍历工具,但是主要用来做增删改。对于这两个的用法,建议结合列表推导一起学习。
一、UNWIND
官方文档对于UNWIND的说明:With UNWIND
, you can transform any list back into individual rows. 注意两点,list和individual rows,说明输入只要是列表就行,输出是每一个元素。用法如下:
可以看到,依次返回了每一个元素。
1、列表去重
WITH [1, 1, 2, 2] AS coll
UNWIND coll AS x
WITH DISTINCT x
RETURN x
2、遍历多个列表
WITH [1, 2] AS a,[3, 4] AS b
UNWIND (a + b) AS x
RETURN x
3、unwind嵌套
WITH [[1, 2],[3, 4], 5] AS nested
UNWIND nested AS x
UNWIND x AS y
RETURN y
4、空列表
UNWIND [] AS x
RETURN x
不返回任何东西,注意不是返回null。
5、路径遍历
match p=(n:Person{name:"p1"})-[*1..5]-(m)
unwind nodes(p) as x
return x
二、FOREACH
foreach是cypher提供的列表更新工具,官方文档说明:The FOREACH
clause is used to update data within a list, whether components of a path, or result of aggregation. 注意两点,update和list。在foreach中,可以执行CREATE
, CREATE UNIQUE
, MERGE
, DELETE
,等更新语法,还可做foreach嵌套。
1、设置路径节点属性
MATCH p =(begin)-[*]->(END )
WHERE begin.name = 'A' AND END .name = 'D'
FOREACH (n IN nodes(p)| SET n.marked = TRUE )
Neo4j笔记(二)Cypher(6)UNWIND和FOREACH相关推荐
- StackExchange.Redis学习笔记(二) Redis查询 五种数据类型的应用
StackExchange.Redis学习笔记(二) Redis查询 五种数据类型的应用 原文: StackExchange.Redis学习笔记(二) Redis查询 五种数据类型的应用 Connec ...
- [MyBatis学习笔记] 二、Mybatis基本操作及相关标签介绍
[MyBatis学习笔记] 二.Mybatis基本操作及相关标签介绍 一.Mybatis简介 二.简单的CRUD操作 1.构建SqlSessionFactory (1)编辑mybatis-config ...
- uniapp 学习笔记二十七 购物车总价计算及弹窗交互逻辑完善
uniapp 学习笔记二十七 购物车总价计算及弹窗交互逻辑完善 uniapp 学习笔记二十七 购物车总价计算及弹窗交互逻辑完善 cart.vue <template><view> ...
- SpringCloud 2020笔记二
SpringCloud 2020笔记二 Spring Cloud 2020 笔记一 五.GateWay Spring生态系统之上建立的 API 网关服务 基于Spring FrameWork 5.Pr ...
- qml学习笔记(二):可视化元素基类Item详解(上半场anchors等等)
原博主博客地址:http://blog.csdn.net/qq21497936 本文章博客地址:http://blog.csdn.net/qq21497936/article/details/7851 ...
- oracle直查和call哪个更快,让oracle跑的更快1读书笔记二
当前位置:我的异常网» 数据库 » <>读书笔记二 <>读书笔记二 www.myexceptions.net 网友分享于:2013-08-23 浏览:9次 <> ...
- 【Visual C++】游戏开发笔记二十七 Direct3D 11入门级知识介绍
游戏开发笔记二十七 Direct3D 11入门级知识介绍 作者:毛星云 邮箱: happylifemxy@163.com 期待着与志同道合的朋友们相互交流 上一节里我们介绍了在迈入Dire ...
- [转载]dorado学习笔记(二)
原文地址:dorado学习笔记(二)作者:傻掛 ·isFirst, isLast在什么情况下使用?在遍历dataset的时候会用到 ·dorado执行的顺序,首先由jsp发送请求,调用相关的ViewM ...
- PyTorch学习笔记(二)——回归
PyTorch学习笔记(二)--回归 本文主要是用PyTorch来实现一个简单的回归任务. 编辑器:spyder 1.引入相应的包及生成伪数据 import torch import torch.nn ...
- tensorflow学习笔记二——建立一个简单的神经网络拟合二次函数
tensorflow学习笔记二--建立一个简单的神经网络 2016-09-23 16:04 2973人阅读 评论(2) 收藏 举报 分类: tensorflow(4) 目录(?)[+] 本笔记目的 ...
最新文章
- Eclipse导入项目常见问题----服务器版本问题02
- Jquery获取select标签的值、文本方式
- springboot+springsecurity+mybatis plus注解实现对方法的权限处理
- 数据结构----快速排序
- python句柄无效_subprocess.Popen 运行windows命令出现“句柄无效”报错的解决方法
- webstorm护眼绿柔主题分享(JetBrains都可用)
- 常用设计模式——创建型
- java子线程切换到主线程_Android子线程切换到UI线程方法总结
- MIKE与SMS网格的区别——个人感受
- IIC协议简介—学习笔记
- 单播、组播(目标广播、多播)、广播、泛洪、洪泛介绍与比较
- ul阻燃标准有几个等级_塑料制品中的UL 阻燃等级防火等级划分标准
- 一个不用背单词的高效英文学习法
- AlphaPose配置最新教程
- python-shutil对文件的移动,重命名,和删除,压缩
- PS 如何制作 圆角矩形 图片
- 使用 logrotate 配置 supervisor 进行日志管理按天备份
- C语言 计算斐波那契数列
- 99条为人处事经典法则剩下的一条由你自己来感悟
- 电脑上不去网?一行命令解决
热门文章
- 木木的常用软件点评(1)------系统必备软件篇
- daad转换器实验数据_DAAD留德日记作者:20分钟我拿到了德企总部的实习offer
- open函数返回-1_python高手养成记05:最详细的python函数教程
- hystrix threadpool coresize_SpringCloud 基础教程(八)-Hystrix熔断器(上)
- 淘宝和天猫,到底哪个靠谱!你上过天猫的当吗?
- 为支持亿级用户,短视频应用应该如何打造技术架构?
- js兼容IE下载图片在本地
- linux主机名(静态主机名、临时主机名)
- 战略制定4大关键要点
- java优化for循环