Graph Gremlin查询以获取给定顶点的进出边

Graph Gremlin查询以获取给定顶点的进出边,graph,gremlin,tinkerpop,azure-cosmosdb,Graph,Gremlin,Tinkerpop,Azure Cosmosdb,我只是在cosmosdb 它使用Gremlin语法进行查询 我在图中有许多用户(顶点),每个用户对其他用户都有“知道”属性。其中一些是外边缘(outE),另一些是内边缘(inE),具体取决于关系的创建方式。 我现在尝试创建一个查询,该查询将返回给定用户(顶点)的所有“已知”关系。 我可以通过以下方式轻松获取inE或outE的ID: g.V('7112138f-fae6-4272-92d8-4f42e331b5e1').inE('knows') g.V('7112138f-fae6-4272-9

我只是在
cosmosdb
它使用Gremlin语法进行查询

我在图中有许多用户(顶点),每个用户对其他用户都有“知道”属性。其中一些是外边缘(outE),另一些是内边缘(inE),具体取决于关系的创建方式。 我现在尝试创建一个查询,该查询将返回给定用户(顶点)的所有“已知”关系。 我可以通过以下方式轻松获取inE或outE的ID:

g.V('7112138f-fae6-4272-92d8-4f42e331b5e1').inE('knows') 
g.V('7112138f-fae6-4272-92d8-4f42e331b5e1').outE('knows') 
其中,
'7112138f-fae6-4272-92d8-4f42e331b5e1'
是我正在查询的用户的Id,但我事先不知道这是输入边缘还是输出边缘,因此希望同时获取这两个边缘(例如,如果用户具有带有“知道”标签的输入和输出边缘)。 我尝试过使用投影和或运算符以及各种组合,例如:

g.V('7112138f-fae6-4272-92d8-4f42e331b5e1').where(outE('knows').or().inE('knows'))
但这并不能让我找回我想要的数据

我想要的只是一个Id列表,其中包含给定顶点标签为“已知”的所有线和线

或者是否有一种更简单/更好的方法来模拟双向关联,例如“知道”或“友谊”


谢谢

在本例中,您可以同时使用
步骤<代码>g.V('7112138f-fae6-4272-92d8-4f42e331b5e1')。两者('knows')

太棒了。再加上otherV(),我可以得到每个人的顶点,这些人要么知道这个顶点,要么被这个顶点知道,这正是我想要的。甚至都不知道这两者的存在,因为它没有列在TinkerPop目录中:!谢谢您也可以使用
两者
来获取所需的顶点。更好!谢谢