解释 Neo4j 返回的记录
Interpreting Neo4j Returned Records
Cypher 查询的 return 方案通常很复杂,但我特别困惑如何访问 returned count
的整数结果。是显示错误的数字还是我以错误的方式访问结果?
查询:
MATCH (self:USER {userID: $userID})-[r:FRIEND]-(other:USER) RETURN count(other)
记录的记录:
Record {
keys: [ 'count(other)' ],
length: 1,
_fields: [ [Integer] ],
_fieldLookup: { 'count(other)': 0 }
}
我调用了 _fieldLookup
并记录了结果:
{ 'count(other)': 0 }
我知道实际计数是 2,因为我可以通过 neo4j 浏览器直观地验证我的数据库。是查询完全错误还是我以错误的方式访问它?
我也很感激任何有关密码查询的 return 架构的文档。我还没有找到任何讨论这个的东西。
编辑:图表截图
我正在测试我对“userID_2”的查询,他实际上有两个朋友。我还在数据库中的其他一些用户上尝试了这个查询,虽然有些用户实际上是零,但查询总是 returned:
{ 'count(other)': 0 }
编辑 2:
我试过记录这个
console.log(result.records[0].get(0));
但是得到了这个奇怪的结果:
Integer { low: 2, high: 0 }
2 是我查询的正确计数,但我很困惑为什么 high
存在。
试试这个:
const count = executeResult.records[0].get(0);
它通过索引或字段键从记录中获取值reference
Cypher 查询的 return 方案通常很复杂,但我特别困惑如何访问 returned count
的整数结果。是显示错误的数字还是我以错误的方式访问结果?
查询:
MATCH (self:USER {userID: $userID})-[r:FRIEND]-(other:USER) RETURN count(other)
记录的记录:
Record {
keys: [ 'count(other)' ],
length: 1,
_fields: [ [Integer] ],
_fieldLookup: { 'count(other)': 0 }
}
我调用了 _fieldLookup
并记录了结果:
{ 'count(other)': 0 }
我知道实际计数是 2,因为我可以通过 neo4j 浏览器直观地验证我的数据库。是查询完全错误还是我以错误的方式访问它?
我也很感激任何有关密码查询的 return 架构的文档。我还没有找到任何讨论这个的东西。
编辑:图表截图
我正在测试我对“userID_2”的查询,他实际上有两个朋友。我还在数据库中的其他一些用户上尝试了这个查询,虽然有些用户实际上是零,但查询总是 returned:
{ 'count(other)': 0 }
编辑 2:
我试过记录这个
console.log(result.records[0].get(0));
但是得到了这个奇怪的结果:
Integer { low: 2, high: 0 }
2 是我查询的正确计数,但我很困惑为什么 high
存在。
试试这个:
const count = executeResult.records[0].get(0);
它通过索引或字段键从记录中获取值reference