查询语句:GO FROM 3 OVER visit YIELD visit.port AS port, $$.server.name AS Name;
这个语句是查询以3为顶点的查询,3如何通过通道作为参数进行查询
比如我想查询顶点的user属性为‘test’的所有顶点的边,这个应该怎么查,谢谢
查询语句:GO FROM 3 OVER visit YIELD visit.port AS port, $$.server.name AS Name;
这个语句是查询以3为顶点的查询,3如何通过通道作为参数进行查询
比如我想查询顶点的user属性为‘test’的所有顶点的边,这个应该怎么查,谢谢
可以用union加lookup
根据属性做过滤现在也只有 lookup, 您先试试把 最后一个 over 后面的先去了, 看看能不能跑通.
pipe的优先级是比union高的,你union的右边的输出,是pipe之后的yield,假如你想先执行union,在前面加个括号
1.0中的OR查询性能不太理想,建议用 lookup union lookup.
麻烦请教一下 union的次数有限制 吗, 这个性能怎么样
我们的需求大概是这样的,比如我们的顶点是云主机,业务上用户会对云主机划分组,而组不会体现在图上的,因为组是随时变动的,如果用户需要查询一个或者多个组的云主机,就需要根据组把这些组所有的云主机查出来,然后再在图里通过lookup进行云主机查询,多个云主机之间union,有些情况用户的组可能有成百上千的云主机, 就需要union成百上千个lookup,麻烦问一下语句会不会过长,性能会不会受影响
大概语句是这样的
(LOOKUP ON server WHERE server.name == “i-4234” yield server.id as id union LOOKUP ON server WHERE server.name == “i-4234” yield server.id as id)| GO FROM $-.id over visit yield visit.proto, $^.server.name, $$.server.name;
如果查询成百上千个server, 整个语句就会变得特别长,这样对查询会不会造成影响,谢谢
应该没有影响的, 就是看着长而已, nebula 现在也没有对于语句长度的限制