如何在TypeDB/Grakn中使用Python API获取count查询的数值结果
你调用match_aggregate()返回的_Numeric对象是TypeDB对聚合查询结果的封装类型,不能直接打印输出数值,需要调用对应类型的转换方法提取结果:
- count查询返回的是整数类型结果,调用
.as_int()(部分SDK版本为.to_int())方法即可拿到具体数值
修改后的代码如下:
q = '''match $x isa processo; get $x; count;''' with TypeDB.core_client("localhost:1729") as client: with client.session(keyspace, SessionType.DATA) as session: with session.transaction(TransactionType.READ) as read_transaction: result = read_transaction.query().match_aggregate(q) # 提取_Numeric对象中的整数值 count_value = result.get().as_int() print(count_value)
补充说明:
如果你的聚合查询是sum、avg这类返回浮点值的查询,调用.as_float()(或.to_float())方法提取结果即可;如果是判断类的布尔返回值,调用.as_boolean()(或.to_boolean())方法。
内容的提问来源于stack exchange,提问作者Jorge
相关产品推荐
相关产品推荐

