4

その概念をよりよく理解するために、単純な DocumentDb ストアド プロシージャを作成しようとしています。この例では、すべて「女性」のユーザーを返そうとしています。単一の一致するドキュメントまたは複数のドキュメントを返すことに注意する必要がありますか?

私のユーザーオブジェクトは次のようになります。

{
   "id": "e85ee3d7-44a5-4250-a116-686e1c2a10f5"
   "firstName": "Jane",
   "lastName": "Doe",
   "gender": "F"
}

これまでのところ、storedproc は次のようになっています。

function(gender) { 

   var context = getContext();
   var response = context.getResponse();
   var collection = context.getCollection();
   var collectionLink = collection.getSelfLink();

   var filterQuery = "SELECT * FROM c WHERE c.gender = '" + gender + "'";
   // Now what???
}

すべての女性ユーザーを返品したいです。1 人または 10,000 人の女性ユーザーがいる可能性があります。

この単純な DocumentDb ストアド プロシージャについて、ご協力をお願いします。ありがとう。

4

1 に答える 1

6

あなたは正しい軌道に乗っています。

次の手順では、コレクションに対して filterQuery を実行し、クエリの応答を応答変数に配置します。

例えば:

function(gender) {
  var context = getContext();
  var response = context.getResponse();
  var collection = context.getCollection();
  var collectionLink = collection.getSelfLink();

  var filterQuery = 'SELECT * FROM c WHERE c.gender = "' + gender + '"';

  collection.queryDocuments(collectionLink, filterQuery, {},
    function(err, documents) {
      response.setBody(response.getBody() + JSON.stringify(documents));
    }
  );
}

DocumentDB の Web サイト ( http://azure.microsoft.com/en-us/documentation/articles/documentdb-programming/ ) で、ストアド プロシージャに関するその他のサンプルとドキュメントを見つけることができます。

于 2014-10-31T01:37:42.870 に答える