微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

当某些顶点/边中不存在预期属性时,如何返回 NULL/空白空间

如何解决当某些顶点/边中不存在预期属性时,如何返回 NULL/空白空间

我收到以下错误,因为某些顶点没有预期的属性

The property does not exist as the key has no associated value for the provided element

查询:-

get_g().V().hasLabel(search_vertex).has(T.id,TextP.containing(search_text)).limit(limit). 
        as_('property_value').inE('owns').outV().as_('id','name')
        .select('property_value','id','name').by(T.id).by(T.id).by('name').toList()
     

如果预期的属性不存在,如何避免异常并返回NULLempty space

解决方法

在 3.5.0 之前的 TinkerPop 版本中,您可以使用 coalesce() (details here) 和 constant() (details here) 步骤返回特定值值不存在的情况,如下所示:

gremlin> g.V().as('a').select('a').by(coalesce(values('age'),constant('foo')))
==>29
==>27
==>foo
==>32
==>foo
==>35

在 3.5 之后的版本中不再需要这样做,因为现在将为这些值返回 null,假设数据库支持此功能,如下所示:

gremlin> g.V().as('a').select('a').by(values('age'))
==>29
==>27
==>null
==>32
==>null
==>35

可以在 Gremlin 用户组的这篇帖子中找到有关此更改的其他详细信息:https://groups.google.com/g/gremlin-users/c/aoaA25H1IE0/m/gTu1MqR1AQAJ

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。