这听起来很傻但有没有办法在Gremlin遍历中创建一个空数组呢?
对于以下查询:
g.V().has('person','name', 'marko').project('a', 'b').by().by()
我想将b
投影为空数组。我试过了:
g.V().has('person','name', 'marko').project('a', 'b').by().by(constant("").fold())
但constant("").fold()
实际上并非空constant("").fold().count()
返回1.这也适用于constant(null).fold()
。
答案 0 :(得分:3)
这就是你要找的东西
g.withSideEffect('x',[]).V().has('person','name','marko').project('a','b').by(select('x')).by('name')
==>[a:[],b:marko]
答案 1 :(得分:3)
空数组/集合实际上只是fold()
。如果过滤所有东西,你将得不到任何东西,因此:
g.V().has('person','name','marko').
project('a', 'b').
by().
by(__.not(identity()).fold())