2013-04-29 87 views
1

我被gremlin困住了。我有像數組這樣的電子郵件,我需要查詢才能找到所有使用這些電子郵件的用戶。像SQL IN運算符那樣的Gremlin查詢?

在SQL我有

SELECT email(s) 
FROM user 
WHERE email IN (xxx, yyy...) 

我怎樣才能小鬼查詢語言做到這一點?

回答

0

如果它是可以接受的,你做的所有頂點的線性掃描,那麼你可以這樣做:

gremlin> g = TinkerGraphFactory.createTinkerGraph() 
==>tinkergraph[vertices:6 edges:6] 
gremlin> s = ['marko','josh'] as Set 
==>marko 
==>josh 
gremlin> g.V.filter{s.contains(it.name)}.name 
==>marko 
==>josh 
+1

這個問題上也出現了neo4j郵件列表(https://groups.google.com/forum/#!topic/neo4j/pgAHqbjumjc)marko提供了這種使用索引的方法,因此避免了線性掃描:'[「[email protected]」, 「[email protected]」]。collect {gV('email',it).name.next()}' – 2013-04-29 14:59:46

0

GV(「表名」,「用戶」)有(「電子郵件」,在[XXX,YYY ....])變換({[ '電子郵件':it.getProperty( '電子郵件')]}) //假設u有一個表名屬性

+0

歡迎來到th e社區,並感謝您的回答。但是,請確保將來您的代碼格式正確。提供關於你的代碼的簡要解釋也很好。 – dayuloli 2015-03-11 06:39:18