Gremlin获得的顶点具有特定边缘类型的最小进入边缘的数量

时间:2019-12-08 04:54:44

标签: gremlin

因此,我有一个带有“人”节点和“会议”节点的图。 边缘可以是“呼入”或“呼出”

我试图弄清楚所有人的名字     具有两个以上“ Called In”类型的边     来自过去30天的会议?

我知道了,但是我该如何处理日期呢?

std::vector

谢谢

enter image description here

1 个答案:

答案 0 :(得分:3)

如果将MeetingDate存储为Long(自纪元以来的天数),则应为:

g.V().hasLabel("person").
  filter(out("Called In").
           has("MeetingDate", gte(LocalDate.now().minusDays(30).toEpochDay())).
         count().is(gt(2))).
 values("name")

如果存储的MeetingDateString,则必须采用美国格式(yyyy-MM-dd),否则,将赢得gte(以及所有其他范围谓词)不行。

接下来,如果将日期编入索引,则您希望执行以下操作以获得最佳遍历性能:

g.V().has("Meeting","MeetingDate",gte(LocalDate.now().minusDays(30).toEpochDay())).
  in("Called In").dedup().
  values("name")