`
zhanshi258
  • 浏览: 48075 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

mongodb 基本操作

 
阅读更多
1. 远程连接
mongo 192.168.23.4/TestDB -u hd -p Dbpassw0rd@Hd
 

2. 创建集合
db.createCollection("test_home");
 
3. 删除集合
db.kk.drop();
db.getCollection("20150306.dat").drop(); 
如果有特殊字符串,第一种是删除不了的,还是用第二种保险

4. 重命名集合
db.test.renameCollection("test1");
 
5. 删除test_home中的数据
db.test_home.remove({});
 

6. 验证是否删除了
db.test_home.find();
 

7. 导出
mongoexport -h 192.168.23.4 -u hd -p Dbpassw0rd@Hd -d TestDB -c stores -o stores.txt

8. 导入
mongoimport -h 192.168.23.4 -u hd -p Dbpassw0rd@Hd -d TestDB -c stores  stores.txt
 
9. 切换用户   切换到local
use local;
 
10. 修改字段名
db.home.update({}, {$rename : {"type" : "row_location"}}, false, true);
 
11. 删除字段       先获取可删除字段的个数,再循环删除
 
var len = db.stores.find({"_class":{$ne:null}}).count();
for (var i = 0; i <= len; i++) {  
   db.stores.update({"_class":{$ne:null}},{"$unset":{"_class":1}});
 };  
 
12. 循环插入
 
var o= db.users.find();
for(var i = 0; i < o.count(); i++){
     print(o[i].user_name);
}
 
13. 插入值
db.test1.insert( { _id: "homepageVersion111", version_type: "homepageVersion111",version_id:o[0].name} );
 
14. 测试删除语句消耗时间
var timeRemoves = function(){
           var start = (new Date()).getTime();
           db.tester.remove();
           db.findOne();
           var timeDiff = (new Date()).getTime() - start;
           print("Remvoe took:"  + timeDiff + "ms");
    }
    timeRemoves();
 
    结论:如果集合里面数据非常多时,直接用drop删除要比remove快很多。
 
15.  改变文档结构    
var joe = db.users.findOne({"name":"joe"});
     joe.relationships = {"friends": joe.friends,"enemies":joe.enemies};
     joe.username = joe.name;
     delete joe.friends
     delete joe.enemies;
     db.users.update({"name","joe"},joe);
 
     常见错误: 查询条件匹配到了多个文档,这时候所有文档都不会更新
 
16. 使用修改器
   "$set" 用来指定一个字段的值。如果这个字段不存在,则创建它
db.users.update({"_id":ObjectId("4b3425rtw462wqt24")},{"$set":{"favorite":"War"}});
 
   "$unset"  将这个键完全删掉
db.users.update({"_id":ObjectId("4b3425rtw462wqt24")},{"$unset":{"favorite":1}});
 
    甚至可以修改内嵌文档
    "$inc"增加和减少,只能用于整型、浮点型等,用法与"$set"类似
 
      下面几个为数组操作
     "$push" 如果数组存在,会向数组末尾加入元素,要是没有就创建新的数组  
db.blog.posts.update({"title":"A blog post"},
          { "$push":{"comments":[
             {
                 "name":"joe",
                 "content":"nice post"
            }
      ]}});
 
 
      这是比较简单的,也可以使用"$each"子操作符,一次为数组添加多个值   
db.stock.ticker.update({"_id":"GOOG"},
          { "$push":{"hourly":{"$each":[154,587,698,154]}
      }});
 
      "$addToSet" 可以避免往数组插入重复值  
db.stock.ticker.update({"_id":"GOOG"},
        {"$addToSet":{"hourly":578}});
 
    "$pull" 删除数组中的元素   删除todo数组中的所有laundry值
    {"$pop":{"key":1}}    {"$pop":{"key":-1}}   从数组末尾或者头删除一个元素 
 db.lists.update({},{"$pull":{"todo":"laundry"}});
 
17. upsert操作  
  是一种特殊的更新 要是没有找到符合条件的文档,就会以这个条件和更新文档为基础,新建一个新的文档。找到了就正常更新。
db.analytics.update({"url":"/blog"},{"$inc":{"pageviews":1}},true);
  第三个参数表示是个upsert
 
18. 更新多个文档
    一般情况update是只会更新一个文档的,要想更新多个文档,可以将update的第4个参数设置为true
db.users.update({"biretday":"10/13/1978"},{"$set":{"gift":"Happy Birthday!"}},false,true);
    如果我们想知道到底更新了多少个文档怎么办?
    更新之后,运行
 db.runCommand({getLastError:1});
    {
       "err":null,
        "updatedExisting": true,
        "n":5,
        "ok":true
     }
  键 "n" 就是被更新的文档数量
分享到:
评论

相关推荐

    MongoDB基本操作.docx

    ### MongoDB基本操作详解 #### MongoDB简介 MongoDB是一款开源的NoSQL数据库系统,以其灵活性、高性能及可扩展性著称,特别适用于Web应用的开发。MongoDB的数据模型基于文档,这意味着它存储的数据形式类似于JSON...

    MongoDB基本操作指南

    MongoDB基本操作指南 MongoDB基本操作指南 MongoDB基本操作指南MongoDB基本操作指南

    Mongodb基本操作

    MongoDB基本操作 MongoDB是一个基于分布式文件存储的NoSQL数据库,具有高性能、可扩展性强、易于使用等特点。下面将详细介绍MongoDB的基本操作。 一、启动和停止MongoDB 1. 启动MongoDB:使用以下命令启动MongoDB...

    MongoDB基本操作-读取MongoDB中的数据.pdf

    ### MongoDB基本操作——读取MongoDB中的数据 #### 一、引言 MongoDB是一款流行的NoSQL数据库系统,因其灵活性和高性能而广泛应用于各种场景。本文档将指导您完成从MongoDB读取数据的基本操作。这包括连接到MongoDB...

    MongoDB基本操作手册1

    "MongoDB基本操作手册1" MongoDB 是一种开源、高性能、无模式的文档数据库,主要应用于解决高并发、海量数据的访问和存储,对数据库的高扩展性和高可用性。常见应用场景包括社交、游戏、物流、物联网、直播等等。 ...

    nosql实验六- MongoDB的安装与基本操作.docx

    MongoDB 安装与基本操作 MongoDB 是一款流行的 NoSQL 数据库,广泛应用于大数据和实时 Web 应用程序。在本实验中,我们将学习如何在 Windows 和 Linux 环境下安装 MongoDB,并了解 MongoDB 的基本操作。 一、...

    玩转MongoDB4.0从入门到实践、MongoDB基本操作之CRUD、进阶之聚合、中索引的重要性、数据分片

    #### 二、MongoDB基本操作之CRUD 这一章节将详细介绍MongoDB中的基本操作——创建(Create)、读取(Retrieve)、更新(Update)和删除(Delete),即CRUD操作: 1. **插入文档**:利用`insert`或`insertOne`命令插入单个...

    MongoDB若基本操作

    在这个“MongoDB基本操作”的主题中,我们将深入探讨如何使用MongoDB进行数据的增删改查以及其它关键操作。 1. **安装与启动MongoDB** - 在不同的操作系统(如Windows、Linux或macOS)上安装MongoDB的步骤略有不同...

    MongoDB基本操作之Python篇

    了解save()与insert()在数据插入上的区别,熟悉update()方法在数据更新上的应用,以及会用drop()和remove()进行数据的删除,再结合find()和find_one()方法进行高效的数据查询和字段筛选,是进行MongoDB操作的基础。...

    MONGODB基本操作封装类

    将mongodb的基本操作,增删查询等封装为一个基本类供人调用

    MongoDB基础操作指南.rar

    本指南将深入探讨MongoDB的基本操作,帮助你更好地理解和掌握这个强大的NoSQL数据库系统。 一、安装与启动MongoDB MongoDB的安装相对简单,提供Windows、Linux和macOS等平台的二进制包。在安装完成后,通过命令行...

    mongoDb 基本操作 整理word

    本文主要概述了MongoDB的基本操作,包括安装、启动、数据库管理以及集合的操作。 首先,安装MongoDB非常简单,可以从官方网站下载适合您系统的版本。在Windows环境下,可以选择不解压或解压模式来运行。不解压模式...

    mongodb 数据库基本操作.doc

    ### MongoDB数据库基本操作详解 #### 一、连接MongoDB数据库 MongoDB是一个广泛使用的开源文档数据库,支持多种编程语言。为了能够与MongoDB交互并执行各种数据库操作,首先需要通过官方提供的驱动程序或其他第三...

    MongoDB数据库操作指南与优化技巧

    内容概要:本文档详细介绍了MongoDB的基本概念与核心技术,涵盖了数据模型、MongoDB基础操作(如insert、find、update等)、术语、索引建立以及查询优化等方面的知识点,并涉及到了安全性和性能调优的内容。...

    MongoDB基础(自己总结不喜勿喷)

    总结来说,MongoDB的基础操作涵盖了数据库的基本管理、数据的增删改查,而副本集和分片则是其在高可用性和可扩展性方面的核心特性。通过深入理解和熟练掌握这些知识,可以有效地利用MongoDB处理大规模的分布式数据...

    mongodb数据库的基本操作

    在本文中,我们将深入探讨“mongodb数据库的基本操作”,包括增、删、改、查以及分页功能。 首先,让我们从创建数据库开始。在MongoDB中,数据库是存储数据的基本单位。通过运行`use &lt;database_name&gt;`命令,你可以...

    掌握MongoDB:NoSQL数据库基础与高级特性教程.rar

    基本操作 数据库和集合 文档操作 查询操作 基本查询 高级查询 索引与性能优化 创建索引 索引类型 索引优化 聚合操作 聚合框架 常用聚合操作 数据库管理 备份与恢复 用户管理与权限控制 分片与复制 复制集 分片 实战...

Global site tag (gtag.js) - Google Analytics