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

MongoDB全文および部分テキスト検索

    MongoDB 3.4と同様に、テキスト検索機能は、ストップワードとステミングの言語固有のルールを使用して、テキストコンテンツで大文字と小文字を区別しない検索をサポートするように設計されています。サポートされている言語のステミングルールは、一般的な動詞と名詞を処理する標準的なアルゴリズムに基づいていますが、適切な名詞を認識していません。

    部分一致またはあいまい一致の明示的なサポートはありませんが、同様の結果につながる用語は、そのように機能しているように見える場合があります。例:「taste」、「tastes」、「tasteful」はすべて「tast」に由来します。SnowballStemming Demoページを試して、より多くの単語とステミングアルゴリズムを試してみてください。

    一致する結果は、すべて同じ単語「LEONEL」のバリエーションであり、大文字と小文字および発音区別符号によってのみ異なります。選択した言語のルールによって「LEONEL」をより短いものに変換できない限り、一致するバリエーションのタイプはこれらだけです。

    効率的な部分一致を実行する場合は、別のアプローチをとる必要があります。役立つアイデアについては、以下を参照してください:

    • JohnPageによるMongoDBでのファジーおよびパーシャルマッチングの効率的な手法
    • JamesTanによる効率的な部分キーワード検索

    MongoDB課題追跡システムで監視/投票できる関連する改善リクエストがあります:SERVER-15090:部分的な単語の一致をサポートするようにテキストインデックスを改善します。



    1. SQLでパーセンテージとして数値をフォーマットする

    2. SQLで値に少なくとも1桁の数字が含まれているかどうかを検出する

    3. SpringRedisエラーハンドル

    4. N:M関係のMongoDBでカスケード削除に相当する推奨事項は何ですか?