sql >> データベース >  >> NoSQL >> MongoDB

mongodbでフィルタリングされたオートコンプリート

    $whereを使用します 集約パイプライン からのパイプラインステージ 検索を実行して不要なドキュメントを除外した後。たとえば、

    Client.aggregate([
      {
        "$search": {
          "autocomplete": {
            "query": `${request.query.term}`,
            "path": "name",
            "fuzzy": {
              "maxEdits": 2,
              "prefixLength": 3,
            },
          },
        },
      },
      { 
        $match: { city: 'city-name' } 
      },
      {
        $limit: 3
      },
      {
        $project: {
          "_id": 0,
        }
      }
    ]);
    


    1. ハウツー:50行未満のコードを使用して大規模にスキャンされたPDFにインデックスを付ける

    2. オブジェクトの配列を使用したMongoDB集約

    3. 一致するよりも大きいMongoDB集約配列サイズ

    4. 2番目のネストされた配列内のプロパティをフィルタリングするプロジェクト