Gremlin 小精灵:如何在图形中获得重复项?
假设我有一个具有属性Gremlin 小精灵:如何在图形中获得重复项?,gremlin,tinkerpop3,Gremlin,Tinkerpop3,假设我有一个具有属性名称的顶点的图,那么获取具有相同名称的所有顶点的ID的好方法是什么 扩展此功能,如果我有一个带有日和月属性的图,如何返回这些顶点的ID,这些顶点共享相同的值。假设您不知道重复项的值,只想找到所有可能的重复项: 这里有一个快速而肮脏的解决方案。使用,例如: g.V().has("name").limit(50).group().by("name"); 我只使用limit,因为对整个图形执行此操作将非常耗时。对于日和月属性,您可以执行相同的操作。假设您不知道重复项的值,只希望找
名称
的顶点的图,那么获取具有相同名称的所有顶点的ID的好方法是什么
扩展此功能,如果我有一个带有
日
和月
属性的图,如何返回这些顶点的ID,这些顶点共享相同的值。假设您不知道重复项的值,只想找到所有可能的重复项:
这里有一个快速而肮脏的解决方案。使用,例如:
g.V().has("name").limit(50).group().by("name");
我只使用
limit
,因为对整个图形执行此操作将非常耗时。对于日
和月
属性,您可以执行相同的操作。假设您不知道重复项的值,只希望找到所有可能的重复项:
这里有一个快速而肮脏的解决方案。使用,例如:
g.V().has("name").limit(50).group().by("name");
我只使用
limit
,因为对整个图形执行此操作将非常耗时。对于日
和月
属性,您可以执行相同的操作。假设您在创建顶点之前已为这些索引属性创建了索引,则可以创建一个小精灵查询,如:
def g=graph.traversal();def vertices=g.V().has(“name”,“David”).id();
这假设您知道正在搜索的值。假设您在创建顶点之前已为这些索引属性创建了索引,则可以创建类似以下内容的gremlin查询:
def g=graph.traversal();def vertices=g.V().has(“name”,“David”).id();
这假设您知道要搜索的值。对于多个属性来说,这实际上不是“同一件事”。对于
day
和month
而言,它将是.group().by(valueMap(“day”,“month”))
。如何消除其中只有一个顶点的任何组?不确定如何在遍历本身中实现这一点。有一个groupCount
谓词可能有用,但不确定如何使用g.V().has(“DEGREE”).limit(50).groupCount().by(“name”)
对于多个属性来说,这实际上不是“同一件事”。对于day
和month
而言,它将是.group().by(valueMap(“day”,“month”))
。如何消除其中只有一个顶点的任何组?不确定如何在遍历本身中实现这一点。有一个groupCount
谓词可能有用,但不确定如何使用g.V().有(“度”).limit(50).groupCount().by(“名称”)
下面的解决方案对您有效吗?顺便说一句,如果你把它们标记为解决方案,那会很有用。下面的解决方案对你有用吗?ps:顺便说一句,如果你将它们标记为解决方案,那将非常有用。