0

次のような検索クエリを実行する必要があります。

SELECT from results WHERE owner=mike,john,tom ...etc
これらのユーザー名が所有するアイテムの連結を提供する必要があります。クエリには約 100 ~ 200 のユーザー名が含まれる場合があります。ユーザー名をフィルターとして使用する全文検索 API (既にキーワード クエリに使用しています) を使用してこれを行うことができます (例: filter(1)=mike&filter(2)=john など)。または、何らかのデータストア結合を試す必要があります。手術 ?

4

2 に答える 2

0

次のようなクエリを作成できます:
owner:mike OR owner:john OR owner:tomなど。ただし、これは、多数の可能な所有者値に対しては効率的ではありません。
代わりに、アプリケーションのセマンティクス(たとえば、「usergroup1」の所有者、「usergroup2」の所有者など)に従って所有者をグループ化できるかどうかを検討し、代わりに、などを使用してドキュメントをクエリしますusergroup:usergroup1

または、各所有者に数値(アプリケーションにとって意味のある値)を割り当てることができる場合は、数値コンパレータを使用できます owner_number < 10

于 2012-05-17T01:03:49.737 に答える
0

最初のクエリは MySQL クエリだと思いますよね?フィールド「所有者」に MySQL クエリのインデックスがある場合、次の構造を使用できます。

SELECT from results WHERE owner IN ('mike','john','tom')

APP Engine についてはあまり多くを語ることはできませんが、確かにフィルターを使用する必要があります。

于 2012-05-17T06:59:47.017 に答える