複合 演算子によるクエリ
Overview
このガイドでは、集計パイプラインを使用して、複合クエリで複数の検索演算子を使用する方法を学習します。
所要時間: 5 分
必要なもの
MongoDB アカウント。 「 MongoDB アカウントのサインアップ 」を参照してください。
Atlas クラスター。 「クラスターの作成 」を参照してください。
デフォルト設定と 動的インデックス を持つ検索インデックス。 デフォルトの動的インデックスを作成するには、「 動的インデックスの構築 」を参照してください。
手順
Atlas Atlasで、プロジェクトの {0 ページにGoします。GoClusters
まだ表示されていない場合は、希望するプロジェクトを含む組織を選択しますナビゲーション バーのOrganizationsメニュー
まだ表示されていない場合は、ナビゲーション バーのProjectsメニューから目的のプロジェクトを選択します。
まだ表示されていない場合は、サイドバーの [Clusters] をクリックします。
[ クラスター]ページが表示されます。
[Collections] タブをクリックします。
sample_supplies
データベースをクリックし、 sales
コレクションをクリックします。
タブでインデックスに対して 複合クエリAggregations を実行します。
[Aggregation] タブをクリックします。
集計パイプラインの作成を開始するには、 + Add Stageをクリックします。
ステージ ウィンドウで、 Selectというラベルの付いたドロップダウン メニューをクリックし、 $searchステージを選択します。
プレースホルダー コードを次のクエリで置き換えます。
{ "compound": { "filter": [{ "text": { "query": "Online", "path": "purchaseMethod" } }], "should": [{ "text": { "query": "notepad", "path": "items" } }] } }
このクエリでは、 compound
演算子を次のように使用します。
filter
句は、purchaseMethod
がOnline
のドキュメントのみを返します。を含む
items
フィールドを持つドキュメントを返すshould
句は、notepad
を含まないドキュメントよりもスコアが高いドキュメントを返します。
複合クエリの結果を確認します。
右側のペインでは、結果には次のサンプル ドキュメントのようなドキュメントのリストが含まれます。
items: Array 0: Object 1: Object 2: Object name: "notepad" ... storeLocation: "Denver" customer: Object couponUsed: false purchaseMethod: "Online" _id: ObjectID('5bd761dcae323e45a93cd06e') saleDate: 2013-11-22T18:49:45.212+00:00
注意
返されるすべてのドキュメントでフィールドは必ずしも同じ順序で表示されるわけではありません。
Array
フィールドとObject
フィールドをクリックすると、展開して内容を表示できます。
概要
このガイドの手順を正常に完了すると、 複合 演算子を使用して Atlas Search 集計ステージが作成され、 演算子のさまざまな句が複数の軸で検索結果を絞り込むためにどのように相互作用するのかがわかります。 次のガイドでは、 ファセット を使用して検索結果をグループ化する方法を学習します。