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

mongoose正規表現とテキストを使用してmongodbを検索する

    正規表現とテキスト検索($ text)はどちらも、テキストを非常に効率的に検索するのに役立ちます。どちらにも長所と短所がありますが、明確な違いが2つあります

    正規表現

    • ^を使用して文字列の先頭で検索しない限り、正規表現はインデックスを利用しません。 オペレーター。

    • 正規表現を使用すると、テキストの一部を検索できます。したがって、。*および他の多くのパターン。

    • 正規表現は、ストップワードまたはノイズワードをサポートしていません。

    $ text

    mongodbのテキストインデックスは非常に高速であり、優先する必要があります。ただし、MongoDBはフル機能のテキストインデックスを実装していません。主な欠点の1つは、部分一致をサポートしていないことです。例えば猫を検索する場合は、猫と猫のみが検索され、ボブキャットやキャタピラーは検索されません。

    結論は、RDBMSのような機能をlikeのように実装しようとしている場合です。 演算子「$text」は役に立ちません(少なくともMongoDBの現在の実装では、将来的には変更される可能性があります)。



    1. MongoDB3.0Javaドライバーで結果をカウントする

    2. MongoDBで日付を文字列に変換する3つの方法

    3. サンタンデールUKでの次世代データウェアハウジング

    4. MongoDBのPHPでISO日付形式を返す方法は?