2015-04-22 29 views
2

我正在演示如何在Neo4j的Cypher和Titan的Gremlin中看到一些元素,即添加新頂點,尋找關係等。 我在尋找cyclec時遇到了問題。這兩種語言中是否有函數可以返回給定頂點的循環?Gremlin/Cypher中的循環

+0

究竟你「循環」是什麼意思?一個邊緣指向自身的頂點?一個簡單的三角?或者在同一個頂點開始和結束的任意長度路徑? –

+0

最後一個,我給出一個頂點和函數返回一個路徑,它開始和結束在同一個頂點。 – user3762819

回答

4

這裏是你如何做到這一點的小鬼:

gremlin> g = TinkerGraphFactory.createTinkerGraph() 
==>tinkergraph[vertices:6 edges:6] 
gremlin> g.v(2).addEdge("knows", g.v(6)) 
==>e[0][2-knows->6] 
gremlin> g.v(6).addEdge("knows", g.v(1)) 
==>e[1][6-knows->1] 
gremlin> v = g.v(1); v.as("v").out().dedup().loop("v") {true} {it.object == v}.path() 
==>[v[1], v[2], v[6], v[1]] 
gremlin> v.as("v").outE().dedup().inV().loop("v") {true} {it.object == v}.path() 
==>[v[1], e[7][1-knows->2], v[2], e[0][2-knows->6], v[6], e[1][6-knows->1], v[1]] 
+0

thx很多,它的作品非常好:) – user3762819