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

一致度の高いMongoDBサブストリング製品の検索順序

    まず、 & オペレーター このように:

    var builder = Builders<Product>.Filter;
    FilterDefinition<Product> filter = builder.Empty;
    filter &= builder.Eq("Color", "blue");
    filter &= builder.Eq("Retailer", "adidas");
    filter &= builder.Eq("Category", "men");
    

    次に、 Regexを使用できます。 名前に残りの単語/すべての残りの単語が含まれている製品をフィルタリングします。
    または 検索(名前には「綿」または「スパイダーマン」が含まれます)

    var restWords = new string[] { "cotton", "spiderman" };
    var orReg = new System.Text.RegularExpressions.Regex(string.Join("|", restWords));
    filter &= builder.Regex("Name", BsonRegularExpression.Create(orReg));
    
    List<Product> filteredList = products.Find(filter).ToListAsync().Result;
    

    そして 検索(名前には「綿」と「スパイダーマン」が含まれます)

    foreach (var word in restWords)
    {
        filter &= builder.Regex("Name", BsonRegularExpression.Create(new System.Text.RegularExpressions.Regex(word)));
    }
    
    List<Product> filteredList = products.Find(filter).ToListAsync().Result;
    



    1. ComputeEngineの内部IPでRedisに接続するとGoogleCloud関数がタイムアウトします

    2. 深くネストされた配列mongodbを更新します

    3. Docker-compose、とにかくredis.confファイルを指定しますか?

    4. pymongoを介してMongoDBのレコードを更新すると、ほとんどのレコードが削除されます