美文网首页
gremlin语言介绍五:基本遍历

gremlin语言介绍五:基本遍历

作者: 生饼 | 来源:发表于2020-07-05 03:09 被阅读0次

1 从vertex开始的遍历

1.1 out

查找vertex的邻接vertex,它有出向edge连接邻接vertex

张三所住的城市

gremlin-> g.V().has('name','张三').out('living')

所有与张三有出向edge连接的对象,如张三住的城市,张三认识的人等

gremlin-> g.V().has('name','张三').out()

1.2 in

查找vertex的邻接vertex,它有入向edge连接邻接vertex

所有住在shenzhen这个城市的人

gremlin-> g.V().has('City', 'name','shenzhen').in('living')

所有关联到shenzhen这个城市的对象

gremlin-> g.V().has('City', 'name','shenzhen').in()

1.3 both

查找vertex的邻接vertex,它有出向或入向edge连接邻接vertex
相当于out() 与 in() 的结果的或

认识张三或张三认识的人

gremlin-> g.V().has('name','张三').both('knows')

所有与张三有某种关系的对象

gremlin-> g.V().has('name','张三').both()

1.4 outE、inE、bothE

分别与out()、in()、both()对应,查找vertex的出向edge、入向edge、出向和入向edge

2 从edge开始的遍历

2.1 outV

查找edge出发的起始vertex,

2.2 inV

查找edge指向的目的vertex

2.3 bothV

查找edge的起始和目的vertex

2.4 otherV

edge的另一个端点。如果是从起始vertex遍历到的edge,otherV()表示edge的目的vertex
如果是从目的vertex遍历到的edge,otherV()表示edge的起始vertex

查找到的是李四,与g.V().has('name','张三').out('knows')的结果相同

gremlin-> g.V().has('name','张三').outE('knows').otherV()

查找到的是张三

gremlin-> g.V().has('name','李四').inE('knows').otherV()

相关文章

网友评论

      本文标题:gremlin语言介绍五:基本遍历

      本文链接:https://www.haomeiwen.com/subject/smemqktx.html