[英]How to “join” vertices and the count of their edges as a 'property' of those vertices in JanusGraph or Gremlin?
我需要返回“帖子”頂點,但是那些帖子具有一些“喜歡”邊緣,我如何返回該帖子的“喜歡”邊緣的計數作為該邊緣的屬性,如下所示:
{標題:“ lorem ipsum .....”,內容:“ yadayadayada”, 喜歡 :6 <----}
以TinkerPop的現代玩具圖為例,您可以執行以下操作:
gremlin> g.V().as('a').
......1> map(outE('created').count()).as('count').
......2> select('a','count').by(valueMap()).by()
==>[a:[name:[marko],age:[29]],count:1]
==>[a:[name:[vadas],age:[27]],count:0]
==>[a:[name:[lop],lang:[java]],count:0]
==>[a:[name:[josh],age:[32]],count:2]
==>[a:[name:[ripple],lang:[java]],count:0]
==>[a:[name:[peter],age:[35]],count:1]
它以“ a”返回頂點的屬性,並以“創建的”邊數計數。 您可能還選擇使用project()
:
gremlin> g.V().
......1> project('a','knows','created').
......2> by(valueMap()).
......3> by(outE('knows').count()).
......4> by(outE('created').count())
==>[a:[name:[marko],age:[29]],knows:2,created:1]
==>[a:[name:[vadas],age:[27]],knows:0,created:0]
==>[a:[name:[lop],lang:[java]],knows:0,created:0]
==>[a:[name:[josh],age:[32]],knows:0,created:2]
==>[a:[name:[ripple],lang:[java]],knows:0,created:0]
==>[a:[name:[peter],age:[35]],knows:0,created:1]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.