博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MongoDB学习day02--数据库增删改查
阅读量:4949 次
发布时间:2019-06-11

本文共 2392 字,大约阅读时间需要 7 分钟。

(window系统,在cmd命令提示符中使用)

一、数据库使用

管理mongodb数据库:mongo,连接本地数据库,或mongo 127.0.0.1:27017,连接其他服务器:mongo  ip:端口号

清屏:cls

查看所有数据库:show dbs

二、创建数据库

use student

如果想要成功创建数据库,那必须插入一个数据。数据库不能插入数据,只能往集合插入数据。

db.user.insert({"name":"zhangsan"})

db.user 系统发现user是一个陌生的集合,所以就自动创建了集合。

显示当前数据库所有集合

show collections 

删除集合

db.user.drop()

删除数据库

db.dropDatabase()

三、增

db.user.insert({"name":"zhangsan"})

db.集合名.insert({"name":"zhangsan"})

四、删

db.user.remove({"name":"zhangsan"})

db.集合名.remove({条件})

删除所有符合条件

db.user.remove({"name":"zhangsan"},{justOne:true})

删除符合条件的第一条

五、改

db.user.update({"name":"zhangsan"},{$set{"age":16}})

db.集合名.update({条件},{$set{更新的字段值}})

更新符合条件的第一条数据

db.user.update({"name":"zhangsan"},{$set{"age":16}},{multi:true})

更新符合条件的所有数据

 db.student.update({"name":"小明"},{"name":"大明", "age":16})

注意,不加$set关键字,是完整替换,即把符合name为小明的数据替换为{"name":"大明", "age":16}

db.users.update({name: 'Lisi'}, {$inc: {age: 50}}, false, true)

相当于:update users set age = age + 50 where name = ‘Lisi’

db.users.update({name: 'Lisi'}, {$inc: {age: 50}, $set: {name: 'hoho'}}, false, true)

相当于:update users set age = age + 50, name = ‘hoho’ where name = ‘Lisi’

六、查

db.user.find()

查询所有数据

db.user.distinct("name")

查询所有数据去掉name重复的数据

db.user.find({"age":22})

查询age=22的数据

db.user.find({age:{$gt:22}})

查询age>22的数据

db.user.find({age:{$gte:22}})

 查询age>=22的数据

db.user.find({age:{$lt:22}})

 查询age<22的数据

db.user.find({age:{$lte:22}})

 查询age<=22的数据

db.user.find({age:{$gte:23,$lte:26}})

 查询23<=age<=26的数据

db.user.find({name:/mongo/})

模糊查询,查询name中包含mongo的数据

db.user.find({name:/^mongo/})

查询name以mongo开头的数据

db.user.find({},{name:1,age:1})

查询指定列name,age的数据,当然 name 也可以用 true false,当用 ture 的情况下和name:1 效果一样,如果用 false

是排除 name,显示 name 以外的列信息。

dn.user.find({age:{$gt:25}},{name:1,age:1})

查询符合条件age>25指定列name、age数据

db.user.find().sort({age:1})

升序,按照age排序

db.user.find().sort({age:-1})

降序,按照age排序

db.user.find({name: 'zhangsan', age: 22}); 

查询 name = zhangsan, age = 22 的数据 

db.user.find({$or: [{age: 22}, {age: 25}]}); 

or查询,查询age=22或age=25的数据

db.user.find().limit(5)

查询前5条数据

db.user,find().skip(10)

查询10条以后的数据

db.user.find().skip(5).limit(10)

查询5-10之间的数据,可用于分页,skip是第几页*pagesize,limit是pagesize

db.user.findOne()

查询第一条数据,相当于db.user.find().limit(1)

db.user.find({age:{$gte:25}}).count()

查询age>=25的数据的条数

db.users.find().skip(5).limit(10).count(true)

如果要返回限制之后的记录数量,要使用 count(true)或者 count(0)

如有错,欢迎指出!!

 

转载于:https://www.cnblogs.com/xc-chejj/p/10878501.html

你可能感兴趣的文章
Qt中图像的显示与基本操作
查看>>
详解软件工程之软件测试
查看>>
WCF(二) 使用配置文件实现WCF应用程序
查看>>
【CodeForces 803 C】Maximal GCD(GCD+思维)
查看>>
python 去掉换行符或者改为其他方式结尾的方法(end='')
查看>>
数据模型(LP32 ILP32 LP64 LLP64 ILP64 )
查看>>
REST构架风格介绍:状态表述转移
查看>>
struct {0}初始化
查看>>
c++ operator
查看>>
apache 添加 ssl_module
查看>>
java小技巧
查看>>
POJ 3204 Ikki's Story I - Road Reconstruction
查看>>
getQueryString
查看>>
Servlet文件上传和下载的复习
查看>>
JavaScript笔记——正则表达式
查看>>
iOS PushMebaby
查看>>
网页消息类
查看>>
【BZOJ】2959: 长跑(lct+缩点)(暂时弃坑)
查看>>
日常一些出现bug的问题
查看>>
同时启动多个tomcat服务器
查看>>