2017-11-07 16 views
0

node-redアプリケーションで "cloudant"データベースを使用しています。ノード赤色アプリケーションを使用してすべてのデータを保存します。私は雲のドキュメント "_id"フィールドのためのランダム()文字列を使用しています、ドキュメントの一部は "_id"フィールドとしてシステム生成 "_id"フィールドが含まれています。 javscriptの日付obejct、つまり「new Date()。getTime()」を使用している「Unixタイムスタンプ」を格納する「createdAt」フィールドを持つすべてのレコード。クラウドDbソート機能がUNIXタイムスタンプを使用して期待どおりに動作しない

私は、次のcloudantDbエンドポイント

{ 
"selector": { 
    "createdAt": { 
     "$gt": 0 
    }, 
    "$or": [{ 
     "task_id": { 
      "$in": ["1_0"] 
     } 
    }, { 
     "page_id": 1 
    }], 
    "table": "details" 
}, 
"sort": [{ 
    "createdAt": "desc" 
}], 
"limit": 20 , "bookmark": null} 

すなわち

{ 
    "ddoc": "_design/629170abb04bb25e13d65322e59141dcc5d16317", 
    "name": "customIndex", 
    "type": "json", 
    "def": { 
     "fields": [{ 
      "createdAt": "asc" 
     }, { 
      "page_id": "asc" 
     }, { 
      "task_id": "asc" 
     }, { 
      "_id": "asc" 
     }] 
    } 

と結果を得るために、次のクエリを使用して、すなわち、以下の設計文書を使用して経由CloudantDBソートインデックスを作成

https://30175cba-a69e-4ff0-9a79-788abcf0f585-bluemix.cloudant.com/master_table/_find

私が行方不明です何をしませんが、それは私がcloudantDbソートでクエリを見つけ実装するには次のリンクを、次の午前なるといつか任意の並べ替え

せずにランダムなレコードを返す必要がありますようcloudantDBは、レコードをソートしません。インデックスすなわち

https://developer.ibm.com/clouddataservices/cloudant-query-new/

ヘルプや提案のいずれかの種類が理解されます。

ありがとうございます。

答えて

1

クラウドレコードはJSONドキュメントで、JSON仕様はJavaScriptの日付タイプをサポートしていません。あなたはこの問題にぶつかる唯一の人物ではありません。この回答をJasonSmithから参照してください。https://stackoverflow.com/a/4815878/1459475

+0

ああ。 'new Date()。getTime()'は実際に数値を返します。私はあなたのデータベースにアクセスすることができないので、これは私がテストすることは難しいです。これをもう一度見てから、あなたは手動でその設計文書を作成し、その文書に対してCloudant Queryセレクターを実行しようとしている可能性があると思います。残念ながら、それは動作しません。 Cloudant Queryセレクタを実行するには、Cloudant Queryを使用してインデックスを作成する必要があります。 https://console.bluemix.net/docs/services/Cloudant/api/cloudant_query.html#creating-an-indexを参照してください。うまくいけばそれは問題ですか? – brobes

+0

ありがとう@brobesあなたの提案。私は既にセレクタクエリのCloudantDb Indexを作成しました。CloudantDbは上記のクエリを実行しているときに警告またはエラーを返しませんでした。インデックスがない場合、CloudantDbは間違いなく警告またはエラーを返すと思います。 –

+0

そうだとすれば、おそらくCouchDBのビューの照合ルールに慣れる必要がありますか?インデックスがソートされている順序を管理するので、おそらくそれは簡単ですか? http://docs.couchdb.org/en/2.1.1/ddocs/views/collat​​ion.html#collat​​ion-specification – brobes

関連する問題