当前位置: 首页 > 知识库问答 >
问题:

Apache TinkerPop Gremlin顶点相等

耿联
2023-03-14

遍历图时,我想保存起始顶点,再进一步遍历一点,并将具有特定边的任何顶点移回保存的顶点。

这是我目前的尝试,但显然是不正确的:

g.V().hasLabel('foo')
  .as('rule')
.repeat(out('belongs_to')).times(2)
.where(
  in('accepts').is(neq('rule'))
)

如何检查Gremlin中的顶点相等?如何过滤掉存在此类相等的所有路径?

共有1个答案

马德厚
2023-03-14

where()匹配开始和结束标签,因此可以使用where(in('accepts')。作为('rule')。由于要排除与图案匹配的顶点,需要使用not()对这部分求反。

g.V().hasLabel('foo').as('rule').
  repeat(out('belongs_to')).
    times(2).
  not(where(__.in('accepts').as('rule')))
 类似资料:
  • 通过几何体BufferGeometry的顶点索引属性BufferGeometry.index可以设置几何体顶点索引数据,如果你有WebGL基础很容易理解顶点索引的概念,如果没有也没有关系,下面会通过一个简单的例子形象说明。 比如绘制一个矩形网格模型,至少需要两个三角形拼接而成,两个三角形,每个三角形有三个顶点,也就是说需要定义6个顶点位置数据。对于矩形网格模型而言,两个三角形有两个顶点位置是重合的

  • 我对整个APEX服务插件是一个新手,但我想知道Salesforce是否对我在APEX服务平台中创建的REST API的Swagger或任何类似的REST描述语言提供了本地支持? 例如: 我希望能够返回swagger json,一个WADL文档,或者这个REST服务(以及我在里面的所有其他REST服务)的东西。有没有人知道我能做到这一点的方法? 提前道谢!

  • 2.1节~2.4节通过缓冲类型几何体BufferGeometry给大家讲解了顶点位置、颜色、法向量、索引数据,本节课给大家引入一个新的threejs几何体APIGeometry。几何体Geometry和缓冲类型几何体BufferGeometry表达的含义相同,只是对象的结构不同,Threejs渲染的时候会先把Geometry转化为BufferGeometry再解析几何体顶点数据进行渲染。 Vect

  • 删除顶点命令用于从数据库中删除顶点。 在删除时,它会检查并保持与边缘的一致性,并将所有交叉引用(带边)移除到已删除的顶点。 以下语句是删除顶点()命令的基本语法。 以下是有关上述语法中选项的详细信息。 - 使用其类,记录标识或子查询定义要移除的顶点。 - 过滤条件以确定命令删除哪些记录。 - 定义要删除的最大记录数。 — - 定义命令一次删除多少个记录,允许您将大型事务分解为更小的块以节省内存使用

  • 在OrientDB中移动顶点命令是将一个或多个顶点从当前位置移动到不同的类或群集。 如果您在特定顶点上应用移动命令,则会更新连接到此顶点的所有边。 如果指定一个集群来移动顶点,那么它会将顶点移动到目标集群的服务器所有者。 以下语句是移动顶点()命令的基本语法。 以下是有关上述语法中选项的详细信息。 - 定义想要移动的顶点。 它接受顶点的特定顶点或记录ID数组的记录ID。 - 定义想要移动顶点的位置

  • OrientDB数据库不仅是一个文档数据库,也是一个图形数据库。 和等新概念用于以图形的形式存储数据。 它在顶点上应用多态性。 的基类是. 在本章中,您将学习如何创建顶点来存储图形数据。 以下语句是创建顶点()命令的基本语法。 以下是有关上述语法中选项的详细信息。 - 定义顶点所属的类。 - 定义存储顶点的集群。 - 定义要设置的字段。 - 定义为字段设置的表达式。 示例 尝试下面的示例来了解如何