mongo 搜索子串
mongo search sub string
大家好,我正在使用 MongoDB 开发一些应用程序,我必须在 collection.
中找到子字符串
我有一个collection查询,如下所示。
> db.Query.find();
>{ "_id" : ObjectId("54c9ec8ead38d420d87743b0"), "QueryID" : 1, "QueryString" : "
List my games", "QueryFrequency" : 9, "QueryResultset" : 3 }
>...
现在我想在 QueryString 中搜索子字符串。
例如这里 "games" 在 "QueryString" 中:"List my games"
为此,我在 QueryString 上启用了索引,在 运行 以下命令之后,我也得到了一些结果。
> db.Query.runCommand("text" , {search : "games"});
"text" 是我索引的名称。
现在的问题是,只有当我搜索的单词长度大于 3(即超过 3 个字符)时,我才能得到结果
在我的示例中,当我使用词 "List" 或 "games" 进行搜索时,我得到了结果,
但是当我使用 "my" 或任何其他少于 4 个字符的单词时,没有结果。
有什么办法可以解决这个问题还是我缺少一些设置。
您可以为此使用正则表达式。你的查询就像
db.collection.find({"query_string":{$regex: your_regex }})
对于不区分大小写的搜索,您可以使用这个
db.users.find ({ "name" : /my/i } )
其中 i 代表不敏感
大家好,我正在使用 MongoDB 开发一些应用程序,我必须在 collection.
中找到子字符串我有一个collection查询,如下所示。
> db.Query.find();
>{ "_id" : ObjectId("54c9ec8ead38d420d87743b0"), "QueryID" : 1, "QueryString" : "
List my games", "QueryFrequency" : 9, "QueryResultset" : 3 }
>...
现在我想在 QueryString 中搜索子字符串。 例如这里 "games" 在 "QueryString" 中:"List my games"
为此,我在 QueryString 上启用了索引,在 运行 以下命令之后,我也得到了一些结果。
> db.Query.runCommand("text" , {search : "games"});
"text" 是我索引的名称。
现在的问题是,只有当我搜索的单词长度大于 3(即超过 3 个字符)时,我才能得到结果
在我的示例中,当我使用词 "List" 或 "games" 进行搜索时,我得到了结果, 但是当我使用 "my" 或任何其他少于 4 个字符的单词时,没有结果。
有什么办法可以解决这个问题还是我缺少一些设置。
您可以为此使用正则表达式。你的查询就像
db.collection.find({"query_string":{$regex: your_regex }})
对于不区分大小写的搜索,您可以使用这个
db.users.find ({ "name" : /my/i } )
其中 i 代表不敏感