如何在MongoDB中实现多条件模糊查询
分类:编程技术
时间:2024-02-20 15:24
浏览:0
评论:0
MongoDB中如何实现多条件模糊查询?相信很多没有经验的人对于解决这个问题都束手无策。本文总结了问题的原因和解决方案。通过这篇文章,希望你能解决这个问题。
模糊查询是数据库的基本操作之一,它检查给定的字符串是否与指定的模式匹配。如果字符完全匹配,可以用=等号表示。如果字符部分匹配,则可以认为是模糊查询。在关系数据中,通过 SQL 使用“%fens%”等语法。那么在mongodb中我们应该如何实现模糊查询的效果呢。
查询条件
关键字 | 描述 |
---|---|
$或 | 或关系 |
$nor | 或关系的反转 |
$gt | 大于 |
$gte | 大于或等于 |
$lt | 小于 |
$lte | 小于或等于 |
$ne | 不等于 |
$in | 多个值范围 |
$nin | 不在多个值范围内 |
$all | 匹配数组中的多个值 |
$regex | 正则,使用在模糊查询中 |
$size | 匹配数组大小 |
$maxDistance | 范围查询,距离(基于LBS) td> |
$mod | 取模运算 |
$near | 邻域查询、查询附近位置(基于LBS) |
$exists | 该字段是否存在 |
$elemMatch | 匹配数组中的元素 |
$within | 范围查询(基于LBS) |
$box | 范围查询,矩形范围 |
$center | 范围查询,圆形范围 |
$center | 范围查询,圆形范围 | td>
$centerSphere | 范围查询,球面半径nge |
$slice | 查询字段集合中的元素(如从数字后的第N个到第M个元素) | < /tr>
模糊查询
精确查询
//Mongodb数据库表 const systemUser = require('../../models/user'); systemUser.find({name:'小明'}). exec(function(err,rs){}
多条件模糊查询
// Mongodb数据库表 const systemUser = require('../../models/user');//前端传入的要查询的关键字 var name = req.query.name;var page = req.query. page || 1; //当前页数 var limitNums = 10; //指定每页查询数量 page = parseInt(page); var skipNums = (page - 1) * limitNums; //跳过指定数量 //正则匹配i忽略大小写 var reg = new RegExp(name, "i");var _filter = { //多字段匹配 $or: [ {name: {$regex: reg}}, {description: {$regex: reg}}, {owner: {$regex: reg }}, ]}systemUser.find(_filter).//跳过指定条数的数据skip(skipNums).//指定要记录的条数从 MongoDB 读取。 limit(limitNums).sort({createTime:-1}).exec(function(err,rs){}
看完上面的内容,你知道如何实现多个MongoDB中的函数?你知道条件模糊查询的方法吗?如果您想学习更多技能或者想了解更多相关内容,请关注行业资讯频道,感谢您的阅读!
1. 本站所有资源来源于用户上传或网络,仅作为参考研究使用,如有侵权请邮件联系站长!
2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
4. 编程技术 > 如何在MongoDB中实现多条件模糊查询
2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
4. 编程技术 > 如何在MongoDB中实现多条件模糊查询