如何在Gremlin查询中使用Select

时间:2019-10-04 03:22:46

标签: graph gremlin

当我执行此gremlin时,我想从“ INS ”表中选择名称和代码,并从“ MC ”表中选择Phone_Number。查询这只是返回最后一个选择项,即 Phone_Number 。没有从 INS 表中获得名称代码

如何在单个gremlin查询中使用两个选择,将不胜感激。

:> graph.traversal().V().hasLabel('Product').has('Product_ID','39401').has('Customer_ID','98833838').out('has_Contact').as('MC').out('has_a_insurance').as('INS').select('INS').valueMap('Name','Code').select('MC').valueMap('Phone_Number')

预期输出为:

==>{INS={Name=[383838], Code=[98]}, MC={Phone_Number=[8383838383]}}
==>{INS={Name=[300333], Code=[32]}, MC={Phone_Number=[4830930303]}}
==>{INS={Name=[748332], Code=[32]}, MC={Phone_Number=[4537373728]}}

谢谢

1 个答案:

答案 0 :(得分:1)

您可以使用project

g.V().hasLabel('Product').has('Product_ID','39401').has('Customer_ID','98833838')
.out('has_Contact').as('MC').out('has_a_insurance').as('INS')
.project('INS', 'MC')
.by(select('INS').valueMap('Name','Code'))
.by(select('MC').valueMap('Phone_Number'))