Database 小精灵忽略存储值
我不熟悉gremlin并尝试查询,但据我观察,存储值总是被忽略 我也尝试过存储、聚合和,但都给了我错误的值 g、 V.has''uuuu typeName','avro_schema'。其中localout''uuu avro_record.fields''xm'.localout'classifiedAs'。has''uuu typeName','DataClassification'.count.iseq1.count.iseqselect'xm.size 这使得“xm”的大小始终为0 我希望大小“xm”的值等于每个avro_模式的传出边数,边标签为“u avro_record.fields” 如上所述,将查询更改为: g、 V.has''uuuu typeName','avro'u schema'.wherelocalout''uuu avro'u record.fields'.localout'classifiedAs'.has''uuuu typeName','DataClassification'.count.iseq1.count.iscountlocal 现在得到的是空结果 编辑: 此外,我还对打印动态值作为副作用表示怀疑 g、 V.has''uuuu typeName','avro_schema'.wherelocalout''uuu avro_record.fields'.localout'classifiedAs'.has''uuuu typeName','DataClassification'.count.iseq1.count.sideEffect{println countlocal}.iscountlocal 输出: [CountLocalStep]Database 小精灵忽略存储值,database,groovy,graph,gremlin,Database,Groovy,Graph,Gremlin,我不熟悉gremlin并尝试查询,但据我观察,存储值总是被忽略 我也尝试过存储、聚合和,但都给了我错误的值 g、 V.has''uuuu typeName','avro_schema'。其中localout''uuu avro_record.fields''xm'.localout'classifiedAs'。has''uuu typeName','DataClassification'.count.iseq1.count.iseqselect'xm.size 这使得“xm”的大小始终为0 我希
正如我所期望的,countlocal的实际值在哪里。调试gremlin查询的最佳实践是什么?在遍历过程中有一些事情是不起作用的。首先,.size不是一个小精灵的步骤,你可能正在寻找.countlocal。其次,eq不接受动态值,它只适用于常量值。阅读where步骤,了解如何与动态值进行比较 更新 要比较两个计数值,请执行以下操作:
g.V().has('__typeName','avro_schema').filter(
out('__avro_record.fields').fold().as('x').
map(unfold().
out('classifiedAs').has('__typeName', 'DataClassification').fold()).as('y').
where('x', eq('y')).
by(count(local)))
已更新查询..现在得到空结果。您仍在使用eq,尽管它现在是隐式的。isvalue与iseqvalue相同。仍然不太清楚如何比较两个动态生成的计数值。这有解决办法吗?我刚刚添加了一个示例。