Hyperldger结构链代码查询到couchdb数据库

时间:2018-05-16 17:32:56

标签: couchdb hyperledger-fabric hyperledger

我是couchdb的新手。我想查询以查找符合以下条件的所有记录 a = first_parameter,b = sec_parameter,时间=最后五分钟 所以在sql中它会像我这样猜测

SELECT *ID* WHERE *A*=1 AND *B*=2 AND*time*>current_time-5

但是如何在hyperledger的链码中完成?我应该使用复合键吗? 附:我查看了大理石示例,但只有一个参数。

1 个答案:

答案 0 :(得分:0)

你可以在视图/索引的map函数中发出复合键数组键,如下所示:

class A {
    public function toString($object = null) {
        if ($object == null) {
            return '';
        }

        $result = '<pre>';
        foreach ($object as $key => $value) {
            $result .= $key . ': ' . $value . '<br>';
        }
        $result .= '</pre>';
        return $result;
    }
}

class B extends A {
    public function toString($object = null) {
        if ($object == null) {
            $object = $this;
        }
        parent::toString($object);
    }
}

然后,您可以像这样查询视图/索引:

emit([doc.A, doc.B, doc.time], doc._id)

要了解数组键如何在CouchDB上运行,您可能需要查看this answer