【发布时间】:2020-08-05 23:40:24
【问题描述】:
g.V().as('a').
outE().as('r').
inV().as('b').
select('a', 'r', 'b').
project('source','label','target').
by(select('a').label()).
by(select('r').label()).
by(select('b').label()).
groupCount().
order(local).by(values, desc).
unfold()
此查询应该适用于任何 gremlin 数据集。
样本输出:
==>{source=Node, label=POINTS_AT, target=Node}=63
==>{source=Node, label=IS_RELATED_TO, target=Other}=14
==>{source=Other, label=POINTS_AT, target=Other}=3
我刚刚开始学习 Gremlin。此查询对 out vertex label、edge label 和 in vertex label 执行 groupCount 并按值对结果进行排序,这些值只是计数。
键是具有多个值 'source'、'label' 和 'target' 的 Map 条目。我想按边缘标签排序结果,然后按源标签,最后按目标标签。我怎样才能做到这一点?
另外,有没有比我提出的查询更好的方法来解决这个问题?
【问题讨论】: