Overview
このガイドでは、Node.js ドライバーを使用してコレクションに対して Atlas Search 検索クエリを実行する方法を学ぶことができます。Atlas Search を使うと、MongoDB Atlas でホストされているコレクションを全文検索できます。Atlas Search インデックスは、検索の動作とインデックスを作成するフィールドを指定します。
サンプル データ
このガイドの例では、Atlas サンプル データセットの sample_mflix
データベースの movies
コレクションを使用します。MongoDB Atlas クラスターを作成し、サンプル データセットをロードする方法については、「Atlas スタートガイド」をご覧ください。
Atlas Search クエリの実行
このセクションでは、コレクションに対して Atlas Search クエリを実行するための集計パイプラインを作成する方法について説明します。パイプラインステージの配列に、検索条件を指定するために $search
ステージを追加します。次に、aggregate()
メソッドを呼び出し、パイプライン配列をパラメーターとして渡します。
Tip
集計操作の詳細については、 集計操作ガイドを参照してください。
Atlas Search クエリを実行する前に、コレクションに Atlas Search インデックスを作成する必要があります。Atlas Search インデックスをプログラムで作成する方法については、「インデックスガイド」の「検索インデックス」セクションを参照してください。
Atlas Search の例
この例では、次のアクションを実行して Atlas Search クエリを実行します。
ドライバーに指示する
$search
ステージを作成し、title
フィールドに"Alabama"
という単語が含まれるドキュメントを検索します。クエリ結果に
title
フィールドを含めるようにドライバーに指示する$project
ステージを作成しますパイプラインのステージを
aggregate()
メソッドに渡し、結果を出力します。
const pipeline = [ { $search: { index: "default", // Replace with your search index name text: { query: "Alabama", path: "title" } } }, { $project: { title: 1 } } ]; const cursor = collection.aggregate(pipeline); for await (const document of cursor) { console.log(document); }
{ _id: new ObjectId('...'), title: 'Alabama Moon' } { _id: new ObjectId('...'), title: 'Crazy in Alabama' } { _id: new ObjectId('...'), title: 'Sweet Home Alabama' }
Tip
Node.js ドライバー Atlas Search の例
Node.js ドライバーを使用して Atlas Search クエリを実行する他の例を表示するには、Atlas ドキュメントの「Atlas Search チュートリアル」を参照してください。
詳細情報
Atlas Search の詳細については、Atlas ドキュメントの「 Atlas Search 」を参照してください。
API ドキュメント
aggregate()
メソッドの詳細については、API ドキュメントをご覧ください。