我现在正在使用CouchDB,但是遇到了这个问题:
我们的数据库有大约50万个文档,并且运行速度非常缓慢。我创建了一些视图,但这并不能解决我的问题。这是示例文档:
{
"id": "b50e2160-6cea-11e9-8921-3b58ff294726",
"key": "1556869935",
"value": {
"name": "John",
"email": "john@doe.com",
"employer": "Dream Job"
},
"doc": {
"_id": "b50e2160-6cea-11e9-8921-3b58ff294726",
"_rev": "1-acd658277df379139362344e46149727",
"userId": "1556869935",
"name": "John"
"email": "john@doe.com"
"address": "Prague 7",
"cell": "777 999 888",
"occupation": "Software Engineer",
"employer": "Dream Job"
}
}
我可以使用密钥查询整个数据库
db.view('users', 'users-view', {
'key': '1556869935',
'include_docs': true
}).then((body) => {
body.rows.forEach((doc) => {
console.log(doc.value);
});
});
但是我想做一些事情,例如给我“ Dream Job”公司的所有名称为“ John”的用户。有什么可能的方法如何从视图中做到这一点?是否可以执行以下示例所示的操作?
db.view('users', 'users-view', {
'value': {
"name": "John",
"employer": "Dream Job"
},
'include_docs': true
}).then((body) => {
body.rows.forEach((doc) => {
console.log(doc.value);
});
});