【发布时间】:2019-11-07 13:28:07
【问题描述】:
我正在与 Go 签订智能合约,我想使用 Rich Query 从 CouchDB 中获取由某些选择器过滤的记录总数,例如:
{\"selector\":{\"doc_type\": \"person\"}}
类似于:
select count(*) from tb where ...
作为 SQL 查询,但如何使用 CouchDB 执行此操作?
【问题讨论】:
-
你有什么问题?该查询不起作用吗?
-
在 CouchDB 中,它不支持聚合查询。所以我必须通过链码来实现它,方法是逐条循环和计算每条记录。我的问题是有什么方法可以提高性能?
-
“在 CouchDB 中,它不支持聚合查询”当然支持。这就是reduce functions 的全部意义所在。
-
所以如果我想计数,我必须手动循环和计数,对吗?如果我有超过 10K 条记录,它会减慢我的查询速度吗?我使用的方法是
GetQueryResultWithPagination。
标签: couchdb hyperledger-fabric hyperledger-chaincode