クエリを作成した後、複数の取得オプションを指定し、返す結果をさらに制御できます。 アプリに対するクエリの構成の詳細については、データストア クエリをご覧ください。
クエリ結果の反復処理
Query
値 の Run
メソッドを使用してクエリ結果を反復処理する場合、Cloud Datastore は結果を一括取得します。デフォルトでは、各バッチに 20 の結果が含まれています。すべての結果が返されるかリクエストがタイムアウトするまでクエリ結果の反復処理を繰り返すことができます。
Run
メソッドを使用して Iterator
を取得します。それによって、Iterator
の Next
メソッドを使用して各エンティティをステップスルーできます。
クエリと一致するすべてのエンティティを同時に取得するには、GetAll
メソッドを使用します。
エンティティから選択したプロパティを取得する
エンティティ全体ではなく、選択したプロパティのみを取得する場合、プロジェクション クエリを使用します。このタイプのクエリはエンティティ全体を返すよりも迅速かつ低コストで実行できます。
Similarly, a keys-only query saves time and resources by returning just the keys to the entities it matches, rather than the full entities themselves. このタイプのクエリを作成するには、Query
を作成するときにKeysOnly
メソッド呼び出します。
クエリに上限を設定する
クエリに対して上限 を設定することで、1 バッチで返される結果の最大数を制御できます。次の例では、最も背の高い 5 名を Cloud Datastore から取得します。
次のステップ
- Cloud Datastore のクエリにおける一般的な制限について学習します。
- クエリの結果を一括して取得できるクエリカーソルについて学習します。
- データの整合性とそれが Cloud Datastore における異なるタイプのクエリでどのように動作するか理解します。
- Cloud Datastore のクエリの基本的な構文と構造について学習します。