MongoDB模糊查询关键字有哪些?怎样操作?
Admin 2021-05-13 群英技术资讯 1982 次浏览
模糊查询是数据库的基本操作之一,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){}
总结
以上就是关于MongoDB多条件模糊查询的介绍,本文对新手具有一定的借鉴价值,有需要的朋友可以看看,希望本文的内容对大家的学习或者工作有帮助。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
mongodb存数组的方法:1、对于一维数组,使用列表,用record['feature1'] = x.tolist(),x = np.fromiter( record['feature1'] )建立数组;2、多维数组用pickle。
你知道Mongodb怎样自增id吗?对于这个问题相信很多初学的小伙伴都是不了解的,那么今天小编就利用实例为大家讲述Mongodb自增id实现方法,希望对大家有所帮助。
文本主要给大家分享的是关于mongodb慢日志的内容,一些朋友对于mongodb慢日志的用处和使用比较陌生,下面小编就给大家具体介绍介绍。
MongoDB 查询分析 MongoDB 查询分析可以确保我们所建立的索引是否有效,是查询语句性能分析的重要工具。 MongoDB 查询分析常用函数有:explain() 和 hint()。 使用 explain() explain 操作提供了查询信息,使用索引及查询统计等。有利于我们对索引的优化。 接下来我们在 users 集合中创建 gender 和 user_name 的索引: >db.users.ensureInde..
MongoDB是一个基于分布式文件存储的数据库,是由C++语言编写的,目的在于为web应用听可扩展的高性能数据存储解决方案。MongoDB与SQL还是存在很大不同的,例如它没有像 SQL 一样有自动增长的功能,那么mongodb字段值自增长要如何实现呢?
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008