对match语句中每一跳分别施加约束

  • nebula 版本:2.6.2
  • 部署方式:单机
  • 安装方式:RPM
  • 是否为线上版本:Y
  • 问题的具体描述
    需求是根据一个指定的顶点向外拓展,对拓展的每一度都进行不同的约束,点要约束其所属的tag,边会有一系列条件约束。
    我目前写的match语句如下,我想知道有没有更好的语句来实现这种需求。
MATCH p = (v:employee) -[e1:contact|relative*1..1]-> (v1) -[e2:contact|relative*1..1]-> (v2) -[e3:contact|relative*1..1]-> (v3) -[e4:contact|relative*1..1]-> (v4) -[e5:contact|relative*1..1]-> (v5) WHERE ( v.employeeId == "e_98687" AND tags(v1)[0] in ["user"] AND tags(v2)[0] in ["user"] AND tags(v3)[0] in ["user"] AND tags(v4)[0] in ["user"] AND tags(v5)[0] in ["user"]) AND ( all(e_ IN e5 WHERE  e_.degree >= 0) AND all(e_ IN e1 WHERE  e_.degree >= 0) AND all(e_ IN e2 WHERE  e_.degree >= 0) AND all(e_ IN e3 WHERE  e_.degree >= 0) AND all(e_ IN e4 WHERE  e_.degree >= 0)) RETURN p

v1 的 tag 为什么不用冒号写进()去呢?多tag?

对,是有多tag筛选

浙ICP备20010487号