如何通过给定的键检索 couchdb 中的所有文档?
How to retrieve all the documents in couchdb by given key?
我们的沙发数据库 url 是 http://10.1.5.88:5984/_utils/database.html?testdata/
我想检索给定键的所有文档。我不确定我们是否可以通过在上面 url.
中将键作为查询参数传递来进行搜索
请告诉我如何通过浏览器显示查询结果。
例如:获取key="countryname".
的所有文档
谢谢。
您将无法使用 ..?testdata&key="countryname".
查询数据库
要查询数据库以获取 key="countryname"
中的所有文档,您必须先在数据库中创建一个 view
。请参阅 http://docs.couchdb.org/en/1.6.1/couchapp/views/intro.html.
处的 CouchDB 文档
我在下面提供了一个例子,如果有帮助的话:
假设您的数据库包含以下文档:
{
"_id": "708ae78bd79fa9802c827e03d3000fe3",
"_rev": "1-f3408ffe54a9b9156dca5c9ad56ce396",
"name": "AFGHANISTAN",
"code": "AF"
}
{
"_id": "708ae78bd79fa9802c827e03d3001767",
"_rev": "1-9952b25ea39460b9923de505945efe3a",
"name": "ALAND ISLANDS",
"code": "AX"
}
{
"_id": "708ae78bd79fa9802c827e03d30030a5",
"_rev": "1-c1f3c9b2310f07f2985aa3fa363a281f",
"name": "ALBANIA",
"code": "AL"
}
在数据库中创建一个包含视图 "country"
的设计文档 "_design/countries"
。
{
"_id": "_design/countries",
"_rev": "1-b30408713ded172df62502b45c959563",
"views": {
"country": {
"map": "function(doc) {\n emit(doc.name, null);\n}"
}
},
"language": "javascript"
}
您现在可以像这样查询数据库:http://127.0.0.1:5984/countries/_design/countries/_view/country?key=%22ALBANIA%22&include_docs=true
这将为您 return 阿尔巴尼亚文件。
{
"total_rows": 3,
"offset": 2,
"rows": [
{
"id": "708ae78bd79fa9802c827e03d30030a5",
"key": "ALBANIA",
"value": null,
"doc": {
"_id": "708ae78bd79fa9802c827e03d30030a5",
"_rev": "1-c1f3c9b2310f07f2985aa3fa363a281f",
"name": "ALBANIA",
"code": "AL"
}
}
]
}
我们的沙发数据库 url 是 http://10.1.5.88:5984/_utils/database.html?testdata/
我想检索给定键的所有文档。我不确定我们是否可以通过在上面 url.
中将键作为查询参数传递来进行搜索请告诉我如何通过浏览器显示查询结果。
例如:获取key="countryname".
的所有文档谢谢。
您将无法使用 ..?testdata&key="countryname".
查询数据库要查询数据库以获取 key="countryname"
中的所有文档,您必须先在数据库中创建一个 view
。请参阅 http://docs.couchdb.org/en/1.6.1/couchapp/views/intro.html.
我在下面提供了一个例子,如果有帮助的话:
假设您的数据库包含以下文档:
{
"_id": "708ae78bd79fa9802c827e03d3000fe3",
"_rev": "1-f3408ffe54a9b9156dca5c9ad56ce396",
"name": "AFGHANISTAN",
"code": "AF"
}
{
"_id": "708ae78bd79fa9802c827e03d3001767",
"_rev": "1-9952b25ea39460b9923de505945efe3a",
"name": "ALAND ISLANDS",
"code": "AX"
}
{
"_id": "708ae78bd79fa9802c827e03d30030a5",
"_rev": "1-c1f3c9b2310f07f2985aa3fa363a281f",
"name": "ALBANIA",
"code": "AL"
}
在数据库中创建一个包含视图 "country"
的设计文档 "_design/countries"
。
{
"_id": "_design/countries",
"_rev": "1-b30408713ded172df62502b45c959563",
"views": {
"country": {
"map": "function(doc) {\n emit(doc.name, null);\n}"
}
},
"language": "javascript"
}
您现在可以像这样查询数据库:http://127.0.0.1:5984/countries/_design/countries/_view/country?key=%22ALBANIA%22&include_docs=true
这将为您 return 阿尔巴尼亚文件。
{
"total_rows": 3,
"offset": 2,
"rows": [
{
"id": "708ae78bd79fa9802c827e03d30030a5",
"key": "ALBANIA",
"value": null,
"doc": {
"_id": "708ae78bd79fa9802c827e03d30030a5",
"_rev": "1-c1f3c9b2310f07f2985aa3fa363a281f",
"name": "ALBANIA",
"code": "AL"
}
}
]
}