如何解决带有嵌套组步骤的Gremlin查询给出了映射错误
错误状态:
"The provided traverser does not map to a value."
无论哪个子查询是嵌套的,都会发生这种情况。 我曾尝试将fold()步骤放入查询的各个部分,但这并没有解决问题。
起作用的单个查询如下:
g.withSack(90D).V(provided)
.repeat(
out('label')
.sack(div)
.by(constant(3D)))
.emit()
.group()
.by(
local(
union(
id(),values('name','year'))
.fold()))
.by(
sack()
.sum())
.unfold()
.order()
.by(values,decr)
和:
g.V(provided)
.repeat(
identity().as('i')
.out('label').as('l'))
.emit()
.group()
.by(
select('l').id())
.by(
local(
union(
select('l').id(),select('i').id())
.fold())
.dedup()
.count())
.unfold()
.order()
.by(values,decr)
g.withSack(90D).V(provided)
.repeat(
identity().as('i')
.out('label').as('l')
.sack(div)
.by(constant(3D)))
.emit()
.group()
.by(
select('i').id())
.by(
local(
union(
select('l').id(),select('i').id())
.fold())
.dedup()
.count()
.group()
.by(
select('l').id())
.by(
sack()
.sum()))
.unfold()
.order()
.by(values,decr)
以相反的顺序嵌套:
g.withSack(90D).V(provided)
.repeat(
identity().as('i')
.out('label').as('l')
.sack(div)
.by(constant(3D)))
.emit()
.group()
.by(
select('l').id())
.by(
sack()
.sum()
.group()
.by(
select('l').id())
.by(
local(
union(
select('l').id(),select('i').id())
.fold())
.dedup()
.count())))
.unfold()
.order()
.by(values,decr)
我正在使用随最新的JanusGraph 0.5.2数据库打包的Gremlin,这是我要查询的数据所在的地方。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。