MongoDB(二)

数据操作

插入一条
> db.a.insert({
   name:'张三',age:18})
WriteResult({
    "nInserted" : 1 })
> dict1 = {
   name:'李四'}
{
    "name" : "李四" }
> dict1.gender = '男'> db.a.insert(dict1)
WriteResult({
    "nInserted" : 1 })
查找所有
> db.a.find()
{
    "_id" : ObjectId("5e049e798f65817d4316f732"), "name" : "张三", "age" : 18 }
{
    "_id" : ObjectId("5e049ecd8f65817d4316f733"), "name" : "李四", "gender" : "男" }

自己指定id

> dict2 = {
   name:'hello',_id:123}
{
    "name" : "hello", "_id" : 123 }
> db.a.insert(dict2)
WriteResult({
    "nInserted" : 1 })
> db.a.find()
{
    "_id" : ObjectId("5e049e798f65817d4316f732"), "name" : "张三", "age" : 18 }
{
    "_id" : ObjectId("5e049ecd8f65817d4316f733"), "name" : "李四", "gender" : "男" }
{
    "_id" : 123, "name" : "hello" }
更新
db.集合名.update(
	查询条件(相当于之前的where),
	更新操作符(相当于更新语句的set),
	多条数据的更新(默认是false,如果全部更新,则为true)
)
> db.a.update({
   _id:123},{
   name:'王五'})
WriteResult({
    "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.a.find()
{
    "_id" : ObjectId("5e049e798f65817d4316f732"), "name" : "张三", "age" : 18 }
{
    "_id" : ObjectId("5e049ecd8f65817d4316f733"), "name" : "李四", "gender" : "男" }
{
    "_id" : 123, "name" : "王五" }

全文档更新

如果没有特殊指定,则新建的内容会对原始的内容进行覆盖

> db.a.update({
   name:'张三'},{
   name:'张山'})
WriteResult({
    "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.a.find()
{
    "_id" : ObjectId("5e049e798f65817d4316f732"), "name" : "张山" }
{
    "_id" : ObjectId("5e049ecd8f65817d4316f733"), "name" : "李四", "gender" : "男" }
{
    "_id" : 123, "name" : "王五" }

指定字段的更新

db.集合名.update(
	{},
	{$set,{筛选条件}}
)
> db.a.insert({
   name:'张三',age:18})
WriteResult({
    "nInserted" : 1 })
> db.a.find()
{
    "_id" : ObjectId("5e049e798f65817d4316f732"), "name" : "张山" }
{
    "_id" : ObjectId("5e049ecd8f65817d4316f733"), "name" : "李四", "gender" : "男" }
{
    "_id" : 123, "name" : "王五" }
{
    "_id" : ObjectId("5e04a2858f65817d4316f734"), "name" : "张三", "age" : 18 }
> 
> db.a.update({
   name:'张三'},{
   $set:{
   age:38}})
WriteResult({
    "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.a.find()
{
    "_id" : ObjectId("5e049e798f65817d4316f732"), "name" : "张山" }
{
    "_id" : ObjectId("5e049ecd8f65817d4316f733"), "name" : "李四", "gender" : "男" }
{
    "_id" : 123, "name" : "王五" }
{
    "_id" : ObjectId("5e04a2858f65817d4316f734"), "name" : "张三", "age" : 38 }
修改多条
> db.a.update({
   },{
   $set:{
   age:100}})
WriteResult({
    "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.a.find()
{
    "_id" : ObjectId("5e049e798f65817d4316f732"), "name" : "张山", "age" : 100 }
{
    "_id" : ObjectId("5e049ecd8f65817d4316f733"), "name" : "李四", "gender" : "男" }
{
    "_id" : 123, "name" : "王五" }
{
    "_id" : ObjectId("5e04a2858f65817d4316f734"), "name" : "张三", "age" : 38 }

> db.a.update({
   },{
   $set:{
   age:100}},{
   multi:true})
WriteResult({
    "nMatched" : 4, "nUpserted" : 0, "nModified" : 3 })
> db.a.find()
{
    "_id" : ObjectId("5e049e798f65817d4316f732"), "name" : "张山", "age" : 100 }
{
    "_id" : ObjectId("5e049ecd8f65817d4316f733"), "name" : "李四", "gender" : "男", "age" : 100 }
{
    "_id" : 123, "name" : "王五", "age" : 100 }
{
    "_id" : ObjectId("5e04a2858f65817d4316f734"), "name" : "张三", "age" : 100 }
删除

语法规则

db.集合名.remove(
	{
   筛选条件},
	{
   justOne:true}
)
  • justOne:删除符合条件的一条或者多条,默认删除多条
> db.a.remove({
   _id:123},{
   justOne:true})
WriteResult({
    "nRemoved" : 1 })
> db.a.find()
{
    "_id" : ObjectId("5e049e798f65817d4316f732"), "name" : "张山", "age" : 100 }
{
    "_id" : ObjectId("5e049ecd8f65817d4316f733"), "name" : "李四", "gender" : "男", "age" : 100 }
{
    "_id" : ObjectId("5e04a2858f65817d4316f734"), "name" : "张三", "age" : 100 }
查询

语法规则:

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

查找出所有符合条件的

> db.a.find({
   gender:'男'})
{
    "_id" : ObjectId("5e049ecd8f65817d4316f733"), "name" : "李四", "gender" : "男", "age" : 100 }

多添加几条数据

> db.a.insert({
   name:'张一毛',age:18,gender:'girl'})
WriteResult({
    "nInserted" : 1 })
> db.a.insert({
   name:'张一毛',age:36,gender:'girl'})
WriteResult({
    "nInserted" : 1 })
> db.a.insert({
   name:'张二毛',age:46,gender:'girl'})
WriteResult({
    "nInserted" : 1 })
> db.a.insert({
   name:'张三毛',age:12,gender:'boy'})
WriteResult({
    "nInserted" : 1 })
> db.a.find()
{
    "_id" : ObjectId("5e049e798f65817d4316f732"), "name" : "张山", "age
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值