多数の航空機の情報を含む CouchDB のサンプル データベースと、製造元をキーとして、モデルを値として示すビューがあります。
マップ機能は
function(doc) {
emit(doc["Manufacturer"], doc._id)
}
そしてreduce関数は
function(keys, values, rereduce){
return values.length;
}
これはとても簡単です。そして、26 機のボーイング機がある Futon を使用してビューを表示すると、実際に正しい結果が得られます。
"BOEING" 26
しかし、REST クライアントを使用してビューをクエリすると、
http://localhost:6060/aircrafts/_design/basic/_view/VendorProducts?key="BOEING"
私は得る
{"rows":[
{"key":null,"value":2}
]}
さまざまなクライアント (Web ブラウザー、REST クライアント拡張機能、curl など) をテストしましたが、すべて 2 という値が得られました! 他のキーを使用したクエリは正しく機能します。
MapReduce 関数またはクエリに何か問題がありますか?