簡體   English   中英

Gremlin 查詢:到目前為止如何獲取查詢中的所有“內部”邊緣?

[英]Gremlin Query: How to get all "internal" edges in the query so far?

所以我試圖在 gremlin 查詢中可視化到目前為止的節點以及這些節點之間的邊緣; 如果可以的話,“內部”邊緣。

例如,我有這個 gremlin 查詢:

g.V().hasLabel("Person").out("Expert in")

這導致一組節點。 在一般情況下,我如何進行 gremlin 查詢以獲取此結果集中節點之間的所有邊?

謝謝你的幫助 :)

out()步驟是outE().inV()的簡寫,因此獲取邊緣的第一步是顯式遍歷邊緣,使它們成為路徑歷史的一部分。 您可以通過多種方式從該歷史記錄中獲取邊緣 - path() 步驟如何?

g.V().hasLabel("Person").outE("Expert in").inV().path()

我想到了!

這個 gremlin 查詢應該可以解決問題:

g.V().hasLabel('Person') // <-- Nodes chosen so far; can be any query resulting in nodes
.dedup()
.union(outE(), inE()) 
.groupCount()
.unfold()
.where(select(values).is(gt(1)))
.select(keys)

這需要所有出邊和所有入邊的聯合,然后刪除那些出現次數不超過一次的邊。 結果是到目前為止查詢中節點之間的所有邊:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM