如果您考虑底层 API,则可以在 Cloudant Query 中使用 $regex 运算符。但是,它不会使用索引,因此性能会非常糟糕,因为它会扫描整个数据库。如果可能,请尝试安排您的 id,以便您可以使用范围查询找到所需的子集。给定一个看起来像这样的数据库:
% curl https://skruger.cloudant.com/aaa/_all_docs
{"total_rows":4,"offset":0,"rows":[
{"id":"aaron","key":"aaron","value":{"rev":"1-..."}},
{"id":"adam","key":"adam","value":{"rev":"1-..."}},
{"id":"ben","key":"ben","value":{"rev":"1-..."}},
{"id":"charlie","key":"charlie","value":{"rev":"1-..."}}
]}
我们可以检索所有 id 仅以“a”开头的文档,
% curl 'https://skruger.cloudant.com/aaa/_all_docs?startkey="a"&endkey="b"'
{"total_rows":4,"offset":0,"rows":[
{"id":"aaron","key":"aaron","value":{"rev":"1-..."}},
{"id":"adam","key":"adam","value":{"rev":"1-..."}}
]}