双检索 JAVA_java-gremlin查询以检索顶点之间具有多个边的...

您的图表似乎并未表明双向边缘是可能的,因此我将牢记这一假设.这是一个简单的示例图-请考虑包括一个有关未来问题的图,因为它比图片和文字描述容易得多,对于那些阅读您的问题的人来说,理解并开始编写Gremlin遍历可以帮助您:

g.addV().property(id,'a').as('a').

addV().property(id,'b').as('b').

addV().property(id,'c').as('c').

addE('knows').from('a').to('b').

addE('knows').from('a').to('b').

addE('knows').from('a').to('c').iterate()

因此,您可以看到顶点“ a”具有到“ b”的两个出射边和到“ c”的一个出射边,因此我们应该得到“ a b”顶点对.一种实现方法是:

gremlin> g.V().as('out').out().as('in').

......1> select('out','in').

......2> groupCount().

......3> unfold().

......4> filter(select(values).is(gt(1))).

......5> select(keys)

==>[out:v[a],in:v[b]]

上面的遍历使用groupCount()来计算“出”和“入”标记的顶点出现的次数(即它们之间的边数)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值