MongoDB模糊查询关键字有哪些?如何操作?
发布时间:2022-03-06 09:36:14 所属栏目:系统 来源:互联网
导读:模糊查询是数据库的基本操作之一,MongoDB中也有模糊查询,下面小编就给大家介绍一下关于精准查询和多条件模糊查询,感兴趣的朋友可以看看。 模糊查询是实现对给定的字符串是否与指定的模式进行匹配。如果字符完全匹配,可以用=等号表示,如果部分匹配可认为
模糊查询是数据库的基本操作之一,MongoDB中也有模糊查询,下面小编就给大家介绍一下关于精准查询和多条件模糊查询,感兴趣的朋友可以看看。 模糊查询是实现对给定的字符串是否与指定的模式进行匹配。如果字符完全匹配,可以用=等号表示,如果部分匹配可认为是一种模糊查询。在关系型数据中,通过SQL使用like ‘%fens%'的语法。那么在mongodb中我们应该如何实现模糊查询的效果呢。 查询条件 关键字 说明 $or 或关系 $nor 或关系取反 $gt 大于 $gte 大于等于 $lt 小于 $lte 小于等于 $ne 不等于 $in 在多个值范围内 $nin 不在多个值范围内 $all 匹配数组中多个值 $regex 正则,用于模糊查询 $size 匹配数组大小 $maxDistance 范围查询,距离(基于LBS) $mod 取模运算 $near 邻域查询,查询附近的位置(基于LBS) $exists 字段是否存在 $elemMatch 匹配内数组内的元素 $within 范围查询(基于LBS) $box 范围查询,矩形范围 $center 范围查询,圆形范围 $centerSphere 范围查询,球形范围 $slice 查询字段集合中的元素(比如从第几个之后,第N到第M个元素) 模糊查询 精准查询 //Mongodb数据库表 const systemUser = require('../../models/user'); systemUser.find({name:'xiaoming'}).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){} ![]() (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |