クイック スタート:Search エクスプローラーを使用してポータルでクエリを実行するQuickstart: Use Search explorer to run queries in the portal

Search エクスプローラー は、Azure Cognitive Search の検索インデックスに対してクエリを実行するために使用される組み込みのクエリ ツールです。Search explorer is a built-in query tool used for running queries against a search index in Azure Cognitive Search. このツールを使用すると、クエリ構文の学習、クエリまたはフィルター式のテスト、あるいはインデックス内の新しいコンテンツの有無を確認することによるデータ更新の確認が簡単になります。This tool makes it easy to learn query syntax, test a query or filter expression, or confirm data refresh by checking whether new content exists in the index.

このクイックスタートでは、既存のインデックスを使用して Search エクスプローラーをデモンストレーションします。This quickstart uses an existing index to demonstrate Search explorer. 要求は Search REST API を使用して作成され、応答は詳細 JSON ドキュメントとして返されます。Requests are formulated using the Search REST API, with responses returned as verbose JSON documents.

前提条件Prerequisites

作業を開始する前に、次の前提条件を満たしておく必要があります。Before you begin, have the following prerequisites in place:

Search エクスプローラーの起動Start Search explorer

  1. Azure portal で、ダッシュボードから検索の概要ページを開くか、または自分のサービスを見つけますIn the Azure portal, open the search overview page from the dashboard or find your service.

  2. コマンド バーから Search エクスプローラーを開きます。Open Search explorer from the command bar:

    ポータルでの Search エクスプローラーのコマンド

    または、開かれたインデックスで組み込みの [Search エクスプローラー] タブを使用します。Or use the embedded Search explorer tab on an open index:

    [Search エクスプローラー] タブ

指定されていないクエリUnspecified query

最初に内容を見るために、用語を指定せずに [検索] をクリックすることによって空の検索を実行します。For a first look at content, execute an empty search by clicking Search with no terms provided. 空の検索は最初のクエリとして役に立ちます。ドキュメント全体が返されるので、ドキュメントの構成を確認できるからです。An empty search is useful as a first query because it returns entire documents so that you can review document composition. 空の検索では検索順位がなく、ドキュメントが任意の順序で返されます (すべてのドキュメントで "@search.score": 1)。On an empty search, there is no search rank and documents are returned in arbitrary order ("@search.score": 1 for all documents). 既定では、50 個のドキュメントが検索要求で返されます。By default, 50 documents are returned in a search request.

空の検索に相当する構文は * または search=* です。Equivalent syntax for an empty search is * or search=*.

search=*

結果Results

非修飾または空のクエリの例

自由形式のクエリは、演算子の有無に関係なく、カスタム アプリから Azure Cognitive Search に送信されるユーザー定義のクエリをシミュレートするのに便利です。Free-form queries, with or without operators, are useful for simulating user-defined queries sent from a custom app to Azure Cognitive Search. 一致をスキャンされるのは、インデックス定義で 検索可能 の属性が付けられたフィールドだけです。Only those fields attributed as Searchable in the index definition are scanned for matches.

検索語やクエリ式などの検索条件を指定すると、検索順位が機能するようになることに注意してください。Notice that when you provide search criteria, such as query terms or expressions, search rank comes into play. 次にフリー テキスト検索の例を示します。The following example illustrates a free text search.

Seattle apartment "Lake Washington" miele OR thermador appliance

結果Results

CTRL + F キーを使用して、関心のある特定の語句を結果内で検索できます。You can use Ctrl-F to search within results for specific terms of interest.

フリー テキストのクエリの例

一致するドキュメントのカウントCount of matching documents

インデックスで見つかった一致の数を取得するには、 $count=true を追加します。Add $count=true to get the number of matches found in an index. 空の検索では、カウントはインデックス内のドキュメントの合計数です。On an empty search, count is the total number of documents in the index. 修飾された検索では、これはクエリ入力と一致するドキュメントの数です。On a qualified search, it's the number of documents matching the query input. サービスから返される一致は、既定により上位 50 件であることを思い出してください。この結果の内容よりも多くの一致がインデックスには存在する可能性があります。Recall that the service returns the top 50 matches by default, so you might have more matches in the index than what's included in the results.

$count=true

結果Results

インデックス内の一致するドキュメントの数

検索結果内のフィールドを制限するLimit fields in search results

Search エクスプローラー の出力を読みやすくするために明示的に指定されたフィールドに結果を制限するには、 $select を追加します。Add $select to limit results to the explicitly named fields for more readable output in Search explorer. 検索文字列と $count=true を維持するには、引数の前に & を付けます。To keep the search string and $count=true, prefix arguments with &.

search=seattle condo&$select=listingId,beds,baths,description,street,city,price&$count=true

結果Results

検索結果のフィールドの制限

結果の次のバッチを返すReturn next batch of results

Azure Cognitive Search は、検索順位に基づいた上位 50 の一致を返します。Azure Cognitive Search returns the top 50 matches based on the search rank. 一致するドキュメントの次のセットを取得するには、「 $top=100,&$skip=50」を追加して、結果セットを 100 個のドキュメントに増やし (既定値は 50、最大は 1,000)、最初の 50 個のドキュメントをスキップします。To get the next set of matching documents, append $top=100,&$skip=50 to increase the result set to 100 documents (default is 50, maximum is 1000), skipping the first 50 documents. ドキュメント キー (listingID) をチェックしてドキュメントを識別することができます。You can check the document key (listingID) to identify a document.

順位付けされた結果を取得するには、クエリ語句や式など、検索条件を指定する必要があることを思い出してください。Recall that you need to provide search criteria, such as a query term or expression, to get ranked results. 取得する検索結果が低位になるほど検索スコアが減少することに注目してください。Notice that search scores decrease the deeper you reach into search results.

search=seattle condo&$select=listingId,beds,baths,description,street,city,price&$count=true&$top=100&$skip=50

結果Results

結果の次のバッチを返す

フィルター式 (より大きい、より小さい、等しい)Filter expressions (greater than, less than, equal to)

正確な条件を指定するには、フリー テキスト検索ではなく $filter パラメーターを使用します。Use the $filter parameter when you want to specify precise criteria rather than free text search. このフィールドには、インデックスで フィルター可能 の属性が付けられている必要があります。The field must be attributed as Filterable in the index. この例では、3 より大きいベッドルームを検索します。This example searches for bedrooms greater than 3:

search=seattle condo&$filter=beds gt 3&$count=true

結果Results

条件によるフィルター

orderby 式Order-by expressions

検索スコアに加えて別のフィールドで結果を並べ替えるには、 $orderby を追加します。Add $orderby to sort results by another field besides search score. このフィールドには、インデックスで 並べ替え可能 の属性が付けられている必要があります。The field must be attributed as Sortable in the index. これをテストするために使用できる式の例:An example expression you can use to test this out is:

search=seattle condo&$select=listingId,beds,price&$filter=beds gt 3&$count=true&$orderby=price asc

結果Results

並べ替え順の変更

$filter 式と $orderby 式はどちらも OData 構文です。Both $filter and $orderby expressions are OData constructions. 詳細については、フィルターの OData 構文に関するページを参照してください。For more information, see Filter OData syntax.

重要なポイントTakeaways

このクイックスタートでは、Search エクスプローラー を使用して、REST API でインデックスにクエリを実行しました。In this quickstart, you used Search explorer to query an index using the REST API.

  • 結果は詳細な JSON ドキュメントとして返されます。そのため、ドキュメントの構成と内容を完全に確認できます。Results are returned as verbose JSON documents so that you can view document construction and content, in entirety. 取得するフィールドは、クエリ式の $select パラメーターで制限できます。The $select parameter in a query expression can limit which fields are returned.

  • ドキュメントは、インデックスで 取得可能 としてマークされているすべてのフィールドで構成されます。Documents are composed of all fields marked as Retrievable in the index. ポータルでインデックスの属性を確認するには、検索の概要ページの [インデックス] 一覧で realestate-us-sample をクリックします。To view index attributes in the portal, click realestate-us-sample in the Indexes list on the search overview page.

  • 商用 Web ブラウザーで入力することがあるような自由形式のクエリは、エンドユーザーのエクスペリエンスをテストするのに便利です。Free-form queries, similar to what you might enter in a commercial web browser, are useful for testing an end-user experience. たとえば、組み込みの不動産サンプル インデックスがあるとしたら、「Seattle apartments lake washington」と入力できます。そして、CTRL + F キーを使用して検索結果内で語句を見つけることができます。For example, assuming the built-in realestate sample index, you could enter "Seattle apartments lake washington", and then you can use Ctrl-F to find terms within the search results.

  • クエリ式とフィルター式は、Azure Cognitive Search に実装されている構文で表されます。Query and filter expressions are articulated in a syntax implemented by Azure Cognitive Search. 既定値は単純な構文です。しかし、必要に応じて完全な Lucene を使用し、より強力なクエリを実行できます。The default is a simple syntax, but you can optionally use full Lucene for more powerful queries. フィルター式は OData 構文です。Filter expressions are an OData syntax.

リソースをクリーンアップするClean up resources

独自のサブスクリプションを使用している場合は、プロジェクトの最後に、作成したリソースがまだ必要かどうかを確認してください。When you're working in your own subscription, it's a good idea at the end of a project to identify whether you still need the resources you created. リソースを実行したままにすると、お金がかかる場合があります。Resources left running can cost you money. リソースは個別に削除することも、リソース グループを削除してリソースのセット全体を削除することもできます。You can delete resources individually or delete the resource group to delete the entire set of resources.

ポータルの左側のナビゲーション ウィンドウにある [すべてのリソース] または [リソース グループ] リンクを使って、リソースを検索および管理できます。You can find and manage resources in the portal, using the All resources or Resource groups link in the left-navigation pane.

無料サービスを使っている場合は、3 つのインデックス、インデクサー、およびデータソースに制限されることに注意してください。If you are using a free service, remember that you are limited to three indexes, indexers, and data sources. ポータルで個別の項目を削除して、制限を超えないようにすることができます。You can delete individual items in the portal to stay under the limit.

次のステップNext steps

クエリ構造やクエリ構文について学習するには、Postman または同等のツールを使用して、API のさらに多くの部分を利用するクエリ式を作成してください。To learn more about query structures and syntax, use Postman or an equivalent tool to create query expressions that leverage more parts of the API. Search REST API は、学習や調査に特に役立ちます。The Search REST API is especially helpful for learning and exploration.