私は CouchDB (および一般的な NoSQL) の初心者であり、簡単な Node.js + Express + nano アプリを作成してその感触をつかんでいます。これは、'title' と 'author' の 2 つのフィールドを持つ単純な書籍のコレクションです。
文書例:
{
"_id": "1223e03eade70ae11c9a3a20790001a9",
"_rev": "2-2e54b7aa874059a9180ac357c2c78e99",
"title": "The Art of War",
"author": "Sun Tzu"
}
縮小機能:
function(doc) {
if (doc.title && doc.author) {
emit(doc.title, doc.author);
}
}
CouchDB はキーでソートし、'descending=true' クエリ パラメータをサポートしているため、タイトルのソート順を切り替えるフィルタを UI に実装するのは簡単でした。これが結果セットのキーです。UI は次のとおりです。
昇順または降順でタイトルを並べ替えるためのリンク付きの書籍のリスト
しかし、私は著者フィールドに対してこれを行う方法について完全に途方に暮れています。
私はこの質問を見てきました。これは、投稿者が数値のreduce値でソートするのに役立ちました。また、リストを使用してreduce値でソートするブログ投稿も読みましたが、これを行う方法は見たことがありませんreduce のない文字列値。