Gremlin:获取没有某些属性字段的顶点列表

时间:2019-04-02 16:32:20

标签: orientdb gremlin

我想查找缺少以下属性之一的人员列表:标题,显示名称,名字,姓氏,ID,电子邮件。

我尝试了以下操作,但出现错误 “ java.lang.ArrayIndexOutOfBoundsException”

如果仅运行前三行,我将获得没有DisplayName且该属性的值为空的用户的结果,但是Title没有属性列。

g.V().hasLabel('people').hasNot('Title')
.or().hasLabel('people').hasNot('DisplayName')
.or().hasLabel('people').hasNot('FirstName')
.or().hasLabel('people').hasNot('LastName')
.or().hasLabel('people').hasNot('Id')
.or().hasLabel('people').hasNot('Email')

1 个答案:

答案 0 :(得分:0)

您为什么使查询过于复杂?谁不只是这个?

g.V().hasLabel('people').not(
    has('Title').has('DisplayName').
    has('FirstName').has('LastName').
    has('Id').has('Email'))

但是,我不清楚您的期望是什么(语句“然而,Title没有属性列”有点令人困惑),但是重写的查询可能已经对您有所帮助(如果没有,请提供一些信息)样本数据和预期结果,这总是使回答遍历相关的问题变得容易得多。