在 gremlin 中对组计数结果进行排序

Sort group count results in gremlin

我有一个产品列表和订单号,我正在使用 gremlin 查找与一个特定产品(假设为产品 2)关联的产品。

我可以查询所有相关产品及其出现次数。我想按相关产品出现的次数降序排列结果。目前,我的查询 returns 一个无序列表:

g.V().has('PRODUCT', 'id', '2').as('a').in('purchased').out('purchased').where(neq('a')).groupCount()

returns:

==>[4:3,6:2,1:1,3:1,5:1,7:2,8:1,9:1,10:1,11:1,12:2,13:2,14:2,15:2,28:1,16:1,17:1]

有谁知道如何按值降序对列表进行排序?

您可以使用 order 步骤:

g.V().has('PRODUCT', 'id','2').as('a')
    .in('purchased').out('purchased')
    .where(neq('a')).groupCount()
    .order(local).by(select(values), desc)

注意: 如果在低于 3.3.4 的版本中使用 gremlin,您可能需要将 desc 替换为 decr