【发布时间】:2020-05-20 16:25:35
【问题描述】:
如果我有这样一行的查询:
project('faceId','count').
如何按预计计数过滤?
这是我正在使用的整个测试查询:
g.V().hasLabel('face').
......1> project('faceId','count').
......2> by('faceId').
......3> by(where(without('a')).both('is similar').
......4> where(without('a')).
......5> store('a').
......6> count())
==>[faceId:face1,count:4]
==>[faceId:face9,count:1]
==>[faceId:face2,count:0]
==>[faceId:face3,count:0]
==>[faceId:face4,count:0]
==>[faceId:face5,count:0]
==>[faceId:face6,count:1]
==>[faceId:face7,count:0]
==>[faceId:face8,count:0]
我正在尝试过滤掉任何计数为 0 的内容。我尝试过像这样的过滤步骤,但“计数”是一个投影而不是一个值,所以它对我不起作用:
.filter{it.count > 0}
where(select('count').is.gt(0))
我也尝试在上述计数步骤的末尾添加.as('count'),但仍然没有成功。
** 测试图**
// The graph
graph = TinkerFactory.createModern()
g = graph.traversal()
g.addV('face').property('faceId','face1')
g.addV('face').property('faceId','face2')
g.addV('face').property('faceId','face3')
g.addV('face').property('faceId','face4')
g.addV('face').property('faceId','face5')
g.addV('face').property('faceId','face6')
g.addV('face').property('faceId','face7')
g.addV('face').property('faceId','face8')
g.addV('face').property('faceId','face9')
g.V().has('face','faceId','face1').as('a').V().has('face','faceId','face2').as('b').addE('is similar').from('a').to('b')
g.V().has('face','faceId','face1').as('a').V().has('face','faceId','face3').as('b').addE('is similar').from('a').to('b')
g.V().has('face','faceId','face1').as('a').V().has('face','faceId','face4').as('b').addE('is similar').from('a').to('b')
g.V().has('face','faceId','face1').as('a').V().has('face','faceId','face5').as('b').addE('is similar').from('a').to('b')
g.V().has('face','faceId','face2').as('a').V().has('face','faceId','face3').as('b').addE('is similar').from('a').to('b')
g.V().has('face','faceId','face2').as('a').V().has('face','faceId','face4').as('b').addE('is similar').from('a').to('b')
g.V().has('face','faceId','face5').as('a').V().has('face','faceId','face6').as('b').addE('is similar').from('a').to('b')
g.V().has('face','faceId','face6').as('a').V().has('face','faceId','face7').as('b').addE('is similar').from('a').to('b')
g.V().has('face','faceId','face8').as('a').V().has('face','faceId','face9').as('b').addE('is similar').from('a').to('b')
【问题讨论】: