MongoDB多条件模糊查询示例代码

 更新时间:2019年09月02日 14:32:52   作者:浅夏晴空  
这篇文章主要给大家介绍了关于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){}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。

相关文章

  • 在PyCharm中安装Mongo Plugin的详细教程

    在PyCharm中安装Mongo Plugin的详细教程

    这篇文章主要介绍了在PyCharm中安装Mongo Plugin的详细教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • MongoDB数据库中索引(index)详解

    MongoDB数据库中索引(index)详解

    本文给大家详细介绍了MongoDB数据库中的索引的知识,优缺点以及使用技巧等方面,非常细致,有需要的小伙伴可以参考下
    2016-11-11
  • 初识NoSQL NoSql数据库入门 NoSql数据库基础知识

    初识NoSQL NoSql数据库入门 NoSql数据库基础知识

    大家有没有听说过“NoSQL”呢?大家可能会误以为是“No!SQL”的缩写,但实际上,它是“Not Only SQL”的缩写。它的意义是:适用关系型数据库的时候就使用关系型数据库,不适用的时候也没有必要非使用关系型数据库不可,可以考虑使用更加合适的数据存储。
    2014-08-08
  • MongoDB系列教程(七):MongoDb数据结构详解

    MongoDB系列教程(七):MongoDb数据结构详解

    这篇文章主要介绍了MongoDB系列教程(七):MongoDb数据结构详解,本文讲解了Collections、Document、GridFS等3种数据结构,需要的朋友可以参考下
    2015-05-05
  • MongoDB学习笔记之GridFS使用介绍

    MongoDB学习笔记之GridFS使用介绍

    这篇文章主要介绍了MongoDB学习笔记之GridFS使用介绍,本文介绍了GridFS的作用、GridFS的一些使用方法、GridFS实现原理及注意事项等,需要的朋友可以参考下
    2015-07-07
  • MongoDb CPU利用率过高问题如何解决

    MongoDb CPU利用率过高问题如何解决

    这篇文章主要介绍了MongoDb CPU利用率过高问题如何解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • MongoDB入门教程之细说MongoDB数据库的增删查改操作

    MongoDB入门教程之细说MongoDB数据库的增删查改操作

    这篇文章主要介绍了MongoDB入门教程之细说MongoDB数据库的增删查改操作,本文环境是windows,所以以图片形式讲解,需要的朋友可以参考下
    2014-08-08
  • MongoDB实现基于关键词的文章检索功能(C#版)

    MongoDB实现基于关键词的文章检索功能(C#版)

    这篇文章主要介绍了MongoDB实现基于关键词的文章检索功能(C#版)的相关资料,需要的朋友可以参考下
    2016-04-04
  • mongodb的写操作

    mongodb的写操作

    今天小编就为大家分享一篇关于mongodb的写操作,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • Mongodb 忘记密码的解决办法

    Mongodb 忘记密码的解决办法

    这篇文章主要介绍了Mongodb数据库忘记密码的解决办法,需要的朋友可以参考下
    2014-03-03

最新评论