本文最主要参考:

好,下面上货

1、先进到MongoDB的shell中
mongo ip:port
mongo 192.168.0.123:27017

在mongo下进行清屏是cls命令。

2、查看当前有哪些数据库
show dbs

3、尝试增加数据:
db.xytest.user.insert({"_id":"01","name":"xiaoming"});

mongodb基本操作(CRUD)

查看是否已经保存到mongo中了

mongodb基本操作(CRUD)

当然,正常情况下我们都会指定_id,因为我们可以用到_id,当然,mongo是能够默认生成_id的。
比如:
db.xytest.user.insert({"name":"xiaoli","age":"18"});

mongodb基本操作(CRUD)

4、批量添加
db.xytest.user.insert([{"_id":"00"},{"_id":"01"},{"_id":"02"}]);

mongodb基本操作(CRUD)

5、注意日期类型
看下面的两种插入方式,我们一般插入的时候使用new Date()的方式。如果是使用Date()的方式,会发现插入的是一个字符串,而不是一个日期对象,这样对后面的查询会带来麻烦。

mongodb基本操作(CRUD)

6、查询
  • 返回多个
db.xytest.user.find();
db.xytest.user.find().pretty(); 以更利于查看的方式输出。
  • 返回一个
db.xytest.user.findOne();
  • 条件查询(等于,不等于,大于,小于,大于等于,小于等于)mongodb基本操作(CRUD)
    • and
    db.col.find({key1:value1, key2:value2}).pretty()
    db.xytest.user.find({"name":"xiaoli","age":"18"}).pretty()
    这里需要注意字段的类型,比如这里的18是字符串,那么查询的时候也需要使用字符串进行查询。如果使用数字类型记性查询的话,会发现查不到需要的数据。mongodb基本操作(CRUD)
    • or
    db.col.find( { $or: [     {key1: value1}, {key2:value2} ] }).pretty()
    db.xytest.user.find({$or:[{"_id":"001"},{"_id":"002"}]}).pretty()mongodb基本操作(CRUD)
    • and和or并用
    where age > 30 and (name="xiaoming" or name="xiaoli")
    db.xytest.find({"age":{$gt:30},$or:[{"name":"xiaoming"},{"name":"xiaoli"}]})
    总结起来,and就是逗号分隔,or是使用$or:[{},{}]连接多个条件。

    • 返回指定列
    db.xytest.user.find({},{"name":1}).pretty()mongodb基本操作(CRUD)

7、更新

查看collection中的数据

mongodb基本操作(CRUD)

尝试修改数据

mongodb基本操作(CRUD)

注意,这里一定要用$set,否则,会把整个文档的内容重置,而不是只修改一个字段。


相关文章: