免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 13041 | 回复: 3
打印 上一主题 下一主题

[MongoDB] mongodb中如何删除列? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-08-13 14:43 |只看该作者 |倒序浏览
刚用mongodb, 比如有个collection内容如下:

{ "_id" : ObjectId("502888b73f8a7cc3ffbdede8"), "id" : 1, "nam" : 210 }
{ "_id" : ObjectId("502887403f8a7cc3ffbdede7"), "id" : 3, "nam" : "t3", "name" : 10 }
{ "_id" : ObjectId("50289af13f8a7cc3ffbdede9"), "id" : 2, "nam" : 500 }

怎么删除其中的name列?  帮助文档中没找到删除列的关键字

论坛徽章:
0
2 [报告]
发表于 2012-09-13 11:02 |只看该作者
> use user      ###假设集合是user
switched to db user
> i={ "_id" : ObjectId("502887403f8a7cc3ffbdede7"), "id" : 3, "nam" : "t3", "name" : 10 }
{
        "_id" : ObjectId("502887403f8a7cc3ffbdede7"),
        "id" : 3,
        "nam" : "t3",
        "name" : 10
}
> db.user.insert(i)   ####将你的数据加进去,这里我只加你要修改的那条
> db.user.find()      ####查看数据是否插入进去
{ "_id" : ObjectId("502887403f8a7cc3ffbdede7"), "id" : 3, "nam" : "t3", "name" : 10 }
> someone=db.user.findOne({"id":3})   ###将你要修改的文档找出来,并赋给someone
{
        "_id" : ObjectId("502887403f8a7cc3ffbdede7"),
        "id" : 3,
        "nam" : "t3",
        "name" : 10
}
> delete someone.name  ####删除someone中你想删除在列(name)
true
> someone   ###可以查看someone已经修改
{ "_id" : ObjectId("502887403f8a7cc3ffbdede7"), "id" : 3, "nam" : "t3" }
> db.user.find()   ###但数据库中的文档没变
{ "_id" : ObjectId("502887403f8a7cc3ffbdede7"), "id" : 3, "nam" : "t3", "name" : 10 }
> db.user.update({id:3},someone)   ###更新数据库中的文档
> db.user.find()  ###查看文档,虽然有点烦,但终于还是达到了你的目标
{ "_id" : ObjectId("502887403f8a7cc3ffbdede7"), "id" : 3, "nam" : "t3" }
>

论坛徽章:
0
3 [报告]
发表于 2012-09-20 07:42 |只看该作者
最近学了修改器,发现删除键太简单了,之前的操作简直让我害羞啊......
> db.name.insert({id:3,nam:"t3",name:10})
> db.name.find()
{ "_id" : ObjectId("505a570bf67c1b9a341caefa"), "id" : 3, "nam" : "t3", "name" : 10 }
> db.name.update({"id" : 3},{$unset:{"name" : 10}})
> db.name.find()
{ "_id" : ObjectId("505a570bf67c1b9a341caefa"), "id" : 3, "nam" : "t3" }

论坛徽章:
0
4 [报告]
发表于 2012-12-11 10:55 |只看该作者
非常感谢)
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP