Orientdb Gremlin:根据活动用户和非活动用户的计数位置生成列表

Orientdb Gremlin:根据活动用户和非活动用户的计数位置生成列表,orientdb,gremlin,Orientdb,Gremlin,我有个人、用户类型和位置。People具有传出边People\u location和People\u usertype。人员具有属性“name”,用户类型具有属性“activationStatus”,位置具有属性“name” 我想创建一个如下所示的列表: [1]: 我想要按位置统计激活状态“活动”和“非活动”的人数,其中位置包含“我们” 这是我仅有的按地点计算的人数,地点“名称”以我们开头: g.V()hasLabel('people').out('people_publicisofficelo

我有个人、用户类型和位置。People具有传出边People\u location和People\u usertype。人员具有属性“name”,用户类型具有属性“activationStatus”,位置具有属性“name”

我想创建一个如下所示的列表:

[1]:

我想要按位置统计激活状态“活动”和“非活动”的人数,其中位置包含“我们”

这是我仅有的按地点计算的人数,地点“名称”以我们开头:

g.V()hasLabel('people').out('people_publicisofficelocation')
.filter(has('name',between('US','UT')))
.groupCount().by('name')

它正在运行,但没有产生结果。

您可以在TinkerPop 3.4之前的版本中使用类似于
has('name',between('US','UT')的东西来模拟'start with'行为
因此您可以用它替换上面的过滤行。如果您使用的图形实现支持TinkerPop 3.4,那么您可以使用其他文本谓词来表示开头、结尾和包含


正如其他人所说,如果您可以发布一些构建图形一部分的示例
addV()
addE()
步骤,那么就更容易给出更精确的答案。

您可以在TinkerPop 3.4之前的版本中使用类似于
has('name','ween('US','UT')的东西来模拟“start with”行为
因此您可以用它替换上面的过滤行。如果您使用的图形实现支持TinkerPop 3.4,那么您可以使用其他文本谓词来表示开头、结尾和包含

正如其他人所说,如果您可以发布一些构建图形一部分的示例
addV()
addE()
步骤,将更容易给出更精确的答案。

这对我来说很有效

g.V().hasLabel('Location').filter(has('name',between('US','UT'))
.project('Name','Active','Inactive','Total').by('Name').by('people\u location').out('people\u usertype'))
其中(values('activationStatus').is(eq('Active')).count()).by('people'u位置').out('people'u usertype'))
.where(values('activationStatus').is(eq('Inactive')).count())
.by(uuu.both('people\u location').out('people\u usertype').count())
这对我来说很有效

g.V().hasLabel('Location').filter(has('name',between('US','UT'))
.project('Name','Active','Inactive','Total').by('Name').by('people\u location').out('people\u usertype'))
其中(values('activationStatus').is(eq('Active')).count()).by('people'u位置').out('people'u usertype'))
.where(values('activationStatus').is(eq('Inactive')).count())

.by(uuuu.both('people\u location').out('people\u usertype').count())

你有没有任何代码可以证明你试图解决这个问题?我用我能想到的所有东西更新了这个问题(我对gremlin很陌生)只需指出一个显而易见的问题:
UK
不是
US
。在问小精灵问题时,最好提供一个样本数据脚本,这样你就可以得到一个经过充分测试的答案-这里有一个例子Daniel-是的,你是对的,我是错的,但是我确实与我们一起运行了相同的代码,它不起作用。我基本上只需要能够根据我的想法过滤你有没有任何代码可以显示你试图解决这个问题?我用我能想到的所有东西更新了这个问题(我对gremlin很陌生)只需指出一个显而易见的问题:
UK
不是
US
。在问小精灵问题时,最好提供一个样本数据脚本,这样你就可以得到一个经过充分测试的答案-这里有一个例子Daniel-是的,你是对的,我是错的,但是我确实与我们一起运行了相同的代码,它不起作用。我基本上只需要能够按我想要的任何内容过滤开尔文,成功了!谢谢。不幸的是,我没有访问addV()和addE()步骤的权限。我的描述不清楚吗?很高兴它成功了。如果你能接受答案,让其他人看到答案,那就太好了。非常感谢。我只是询问了
addV()
addE()
以防您的问题还有更多。干杯。嗨,开尔文,成功了!谢谢。不幸的是,我没有访问addV()和addE()步骤的权限。我的描述不清楚吗?很高兴它成功了。如果您能接受答案,以便其他人能看到答案,那就太好了。非常感谢。我只是询问了
addV()
addE()。