match通过多个关联的tag属性过滤

  • nebula 版本:3.6
  • 部署方式:单机
  • 安装方式: RPM
  • 是否上生产环境:N
  • 问题的具体描述

假设我有tag:A,B,C,D和他们的边edge_ab,edge_ac,edge_ad,意思是tag A和B、C、D都有边连接,
这是我想同时通过B、C、D的属性来查询A,应该怎么写?

就是有个点有 tagA 和其他有 tagB 或者 tagC 或者 tagD 的点相连对吧?

参考下

match(v:tagA)-[]-(n:tagB|tagC|tagD) where tagB.prop == xxx return v;

注意,你得给过滤条件的属性创建索引。

我指的是同时过滤B、C、D的属性来查询A

match (v:tagA)-(v2:tagB) where v2.tagB.xxx == xxx match (v)-(v3:tagC) where v3.tagC.xxx == xxx match (v)-(v4:tagD) where v4.tagD.xxx == xxx return v

1 个赞

目前测试下来可以,多谢!!

1 个赞

此话题已在最后回复的 30 天后被自动关闭。不再允许新回复。