![](/img/trans.png)
[英]Update edge property value using gremlin scala in titan + cassandra DB
[英]Fetch outgoing edge property value between two vertices in scala gremlin
我正在嘗試獲取兩個頂點之間的邊屬性值。 例如,A-->BA 和 B 是兩個頂點,它具有屬性(名稱)的邊。
我的代碼看起來像:
graph.V().hasLabel(A).outE().value("name").headOption()
它為我提供了名稱的屬性值。
在給定的兩個頂點中,我得到 None 作為輸出
graph.traversal().V().hasLabel(A).outE("test").outV().hasLabel(B).properties("name").headOption()
“測試”-邊緣標簽“名稱”-邊緣屬性
知道我的查詢有什么問題。
很抱歉無法在您對之前提出的問題的評論中回答這個問題。 我認為你正在尋找的是:
graph.traversal().V()
.hasLabel("A").outE("test").as("x").otherV()
.hasLabel("B").select("x").properties("name");
如果您只想要邊緣上的屬性值,您可以執行以下操作:
graph.traversal().V()
.hasLabel("A").outE("test").as("x").otherV()
.hasLabel("B").select("x").values("name");
旁注(為什么你原來的遍歷是錯誤的):你原來的遍歷:
graph.traversal().V().hasLabel(A).outE("test").outV().hasLabel(B).properties("name").headOption()
正在做以下事情:
獲取標簽為"A"
所有頂點
從這些頂點沿着具有標簽"test"
的向外邊緣到具有標簽“B”的頂點
然后從這些頂點獲取屬性"name"
您實際上是在要求頂點上的屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.