0

一般的な考え方は、いくつかの値でデータを選択し、日付で並べ替える必要があるということです。

このSQLクエリのようなものをcouchdbにクエリする必要があります

Select * from TABLE where Val = "val1" OR Val = "val2" order by Date

だから私はマップ関数が次のようになっています

if(doc.type == 'item'){
  emit([doc.val, doc.date], doc);
}

それは次のようなものであるべきだと思います

?startkey=[['val1','val2']]&endkey=[['val1','val2'],{}]

また

{keys: [['val1',{}],['val2',{}]]}

出来ますか?他のいくつかの亜種が存在する可能性があります-この問題を解決するのは難しいですか? ありがとう。

4

1 に答える 1

1

これは CouchDB では不可能です。2 つのクエリを (おそらく 1 つの一括要求として) 実行し、クライアントで最終的な順序付けを実行する必要があります (これは線形時間の操作です)。

于 2012-06-11T12:54:44.720 に答える