2

次のコレクションとテキスト インデックスを作成しました。

db.test1.insert({"name":"kumar goyal","email":'rakesh.goyal@gmail.com',"phoneNo":9742140651});
db.test1.ensureIndex({ "$**": "text" },{ name: "TextIndex" })

部分検索は、名前と電子メール フィールドなどで機能しています。

db.test1.runCommand("text",{search:'rakesh'});

レコードを適切に返しますが、phoneNoフィールドでは機能しません。

db.test1.runCommand("text",{search:'9742'}); 

動かない。

テキスト インデックスが数値フィールドで機能していないと思います。とにかくmongodbで動作させる方法はありますか?

4

2 に答える 2

2

電話番号を数字として挿入していますが、それを文字列として検索しています。

おそらく、電話番号を文字列として挿入することを検討する必要があります。そのフィールドで算術アクションを実行する予定はありませんか?

このようにして、mongoは「数字」に対してテキスト検索(例として挙げたものなど)を実行できますが、それらを文字列として扱います。

于 2013-10-24T10:28:51.587 に答える