0


mongodb模糊查询

mongodb模糊查询,可以使用正则表达式查询来实现

1、点号字符在正则表达式中是一个通配符,它代表所有字符和数字。

2、*号表示前面的匹配符出现>=0次

3、+号表示前面的匹配符出现>=1次

4、?号表示前面的匹配符出现<=1次

5、{666}表示前面的匹配符出现666次

6、{666,888}表示前面的匹配符出现666~888次

7、^匹配开头,$匹配结尾

比如,有一堆新闻报道,集合名称为news,正文字段为text

需求1,找出正文中包含"加薪"的新闻:

db.news.find({
"text": {
$regex: "加薪"
}
});

需求2,找出正文中包含两到四次"加薪"的新闻

db.news.find({
"text": {
$regex: "(.加薪.){2,4}"
}
});

注意:提到两到四次"加薪",正则表达式不是:(加薪){2,4}

(加薪){2,4} 是指的文章中出现了"加薪加薪"或者"加薪加薪加薪"或者"加薪加薪加薪加薪"

需求3,找出跟董事长相关的加薪新闻

db.news.find({
"text": {
$regex: ".*董事长.加薪."
}
});

有没有感觉,用mongodb也能简单的搜一些语义相关的内容了呢,哈哈哈

标签: 数据库

本文转载自: https://blog.csdn.net/tstcylq/article/details/128116637
版权归原作者 happy一个世纪 所有, 如有侵权,请联系我们删除。

“mongodb模糊查询”的评论:

还没有评论