我被gremlin困住了。我有像数组这样的电子邮件,我需要查询才能找到所有使用这些电子邮件的用户。像SQL IN运算符那样的Gremlin查询?
在SQL我有
SELECT email(s)
FROM user
WHERE email IN (xxx, yyy...)
我怎样才能小鬼查询语言做到这一点?
我被gremlin困住了。我有像数组这样的电子邮件,我需要查询才能找到所有使用这些电子邮件的用户。像SQL IN运算符那样的Gremlin查询?
在SQL我有
SELECT email(s)
FROM user
WHERE email IN (xxx, yyy...)
我怎样才能小鬼查询语言做到这一点?
如果它是可以接受的,你做的所有顶点的线性扫描,那么你可以这样做:
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
GV(“表名”,“用户”)有(“电子邮件”,在[XXX,YYY ....])变换({[ '电子邮件':it.getProperty( '电子邮件')]}) //假设u有一个表名属性
欢迎来到th e社区,并感谢您的回答。但是,请确保将来您的代码格式正确。提供关于你的代码的简要解释也很好。 – dayuloli 2015-03-11 06:39:18
这个问题上也出现了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