datastax - Gremlin:在单个 gremlin 查询中添加边和删除边
问题描述
如何在单个 gremlin 查询中添加边并将边删除到相同的顶点类型。
假设我们有两种类型的顶点类型 A --is--> B 现在我有连接到 B 的其他一些顶点的顶点。
我想将 A 的顶点更新为 B 的其他顶点。
目前,我正在删除当前的 B 顶点,然后添加新的顶点。
解决方案
您可以使用 a 遍历一次sideEffect()
:
gremlin> g.V().has('person','name','marko').as('m').
......1> outE('knows').
......2> filter(inV().has('person','name','vadas')).
......3> sideEffect(drop()).
......4> V().has('person','name','peter').
......5> addE('knows').from('m')
==>e[13][1-knows->6]
在第 1 行,我们基本上确定了我们想要摆脱的边(即从“marko”到“vadas”的“知道”边),我们drop()
在第 3 行。在第 4 行,我们查找我们希望连接的顶点“marko” 到现在,然后在第 5 行添加边缘。
推荐阅读
- jquery - 通过ajax api json响应在amcharts中绘制堆叠图表
- akka - 如何避免节点在 Akka Cluster 中被隔离?
- javascript - 同构反应与盖茨比(静态站点)反应
- java - 为什么 Java XPath.evaluate() 在使用实体时会抛出 NullPointerException?
- python-3.x - 如何为 sklearn 中的交叉验证的每个折叠获得多类分类的每类精度、召回率和 f1 分数?
- javascript - 过滤器内的 Javascript 映射
- python - read_csv 使用 dtypes 但列中没有值
- java - 对源代码所做的更改未在应用程序中显示 - 如何完全清除 tomcat 缓存
- sql-server - 数据层导出到 BacPac 失败
- variables - 带有扩展正则表达式和不同分隔符的 Makefile 中的 Sed