zoukankan      html  css  js  c++  java
  • MongoDB 基本操作具体解释

    MongoDB 最大的特点是他支持的查询语言很强大,其语法有点类似于面向对象的查询语 言。差点儿能够实现类似关系数据库单表查询的绝大部分功能,并且还支持对数据建立索引。

    最后因为 MongoDB 能够支持复杂的数据结构,并且带有强大的数据查询功能。因此很受 到欢迎。许多项目都考虑用 MongoDB 来替代 MySQL 等传统数据库来实现不是特别复杂的 Web 应用。

    因为数据量实在太大。所以迁移到了 MongoDB 上面,数据查询的速度得到了非 常显著的提升。

    以下将介绍一些查询语法

    1、 条件操作符

    <, <=, >, >= 这个操作符就不用多解释了 ,最经常使用也是最简单的

    db.collection.find({ "field" : { $gt: value } } ); // 大于: field > value
    db.collection.find({ "field" : { $lt: value } } ); // 小于: field < value
    db.collection.find({ "field" : { $gte: value } } ); // 大于等于: field >= value
    db.collection.find({ "field" : { $lte: value } } ); // 小于等于: field <= value

    假设要同一时候满足多个条件。能够这样做

    db.collection.find({ "field" : { $gt: value1, $lt: value2 } } ); // value1 < field < value

    2、$all 匹配全部

    这个操作符跟 SQL 语法的 in 类似,但不同的是, in 仅仅需满足( )内的某一个值就可以, 而$all 必须满足[ ]内的全部值,比如:

    db.users.find({age : {$all : [6, 8]}});

    能够查询出 {name: ‘David’, age: 26, age: [ 6, 8, 9 ] }
    但查询不出 {name: ‘David’, age: 26, age: [ 6, 7, 9 ] }

    3、$exists 推断字段是否存在

    查询全部存在 age 字段的记录

    db.users.find({age: {$exists: true}});

    查询全部不存在 name 字段的记录

  • 相关阅读:
    当我有一台服务器时我做了什么
    git 安装及基本配置
    关于大厂面试中问到的二十几个 HTTP 面试题
    日问周刊 | 全栈面试汇总 | 第七期
    dockerfile 最佳实践及示例
    面试官:如果 http 响应头中 ETag 值改变了,是否意味着文件内容一定已经更改
    Nginx 反向代理时获取用户的真实 IP
    Go 语言实现 HTTP 层面的反向代理
    Go 语言中的 Http 路由基础
    Json Schema
  • 原文地址:https://www.cnblogs.com/lxjshuju/p/7210756.html
Copyright © 2011-2022 走看看