1

我如何向 gremlin 请求具有我选择的属性的有限节点列表?

就像是:

g.V. 10 nodes with nodeType=="User", return only id, name and email.
4

4 回答 4

2

为了速度,请执行 filter{it.getProperty('nodeType').equals('User')}...

于 2012-11-19T22:18:14.867 回答
2

使用 TinkerPop 3+,那将是:

g.V().hasLabel('user').limit(10).valueMap(true, 'name', 'email')

调用valueMap(true)返回遍历的图元素的idlabel

为了提高性能,现在建议避免使用 lambda 并使用 Gremlin 步骤。

于 2016-05-17T19:25:18.850 回答
1

如果您使用的是 Tinkerpop 3,并且您正在搜索的“类型”定义为节点标签,那么您可以执行以下操作:

gVhasLabel('User')[0..10].valueMap.select('id','name','e-mail')

另请注意,如果您想要 10 个节点而不是 [0..9],我认为您需要指定 [0..10]

但是,我完全听从 Marko 对性能的回答,因为他了解内部结构。我只是喜欢 hasLabel() 的干净感觉。

于 2015-11-25T00:10:19.240 回答
0
g.V.filter{it.nodeType=='User'}[0..9].transform(){it.id +  ' ' + it.name + ' ' + it.email}
于 2012-11-04T00:03:06.947 回答