如何不区分大小写地在 gremlin-javascript 中查询

How to query in gremlin-javascript case-insensitively

您好,我正在尝试在 Gremlin-Javascript 中编写一个查询来查询 AWS Neptune 数据库。 在查询过程中,我希望我的锚点不区分大小写。 我喜欢这样:

[errRelatedTicket, relatedTicket] = await to(g.V().hasLabel('Anchor').or(hasId('anchorId'), hasId('ANCHORID'),hasId('anchorid')).in_('SOURCEDATA_HAS_ANCHORPOINT').in_('EVENT_HAS_SOURCEDATA').out('EVENT_HAS_CASE').dedup().toList());

但是我得到一个错误 'hasId not defined',我认为 'or' 这一步有问题。 我还在海王星数据库控制台中尝试过。 实际上,它可以使用:

g.V().hasLabel('Anchor').or(hasId('anchorId'), hasId('ANCHORID')).in('SOURCEDATA_HAS_ANCHORPOINT').in('EVENT_HAS_SOURCEDATA').out('EVENT_HAS_CASE').dedup().toList()

我错过了什么吗?

你应该导入图遍历静态,然后用它来开始内部遍历:

const __ = gremlin.process.statics;

g.V().hasLabel('Anchor')
  .or(__.hasId('anchorId'), __.hasId('ANCHORID'))
  .in('SOURCEDATA_HAS_ANCHORPOINT')
  .in('EVENT_HAS_SOURCEDATA')
  .out('EVENT_HAS_CASE').dedup().toList()