>
> db.foo.update({"name":"fuxck"},{"dd":"sss"}) <---将name-->fuxck 改为 dd-->sss
db.urls.find({"url":/^http:\/\/www\..*?\.php$/}).count() 获取以.php结尾的 url 的数量
mongo 的查询感觉都是用正则来表示的,,,
> use sites
switched to db sites 切换到 collection sites 。。。
mongo 2xx.xxx.154.247/db 连接远程的 db 数据库。。
> db.urls.distinct("url")
Wed Nov 28 16:13:50 uncaught exception: distinct failed: {
"errmsg" : "exception: distinct too big, 16mb cap",
"code" : 10044,
"ok" : 0
}
>
ditinct 不好使啊 。。。只能处理小数据 。。。google了下 貌似现在也没啥好的办法 ,,
只能搞一个 collection 专门记录不同的值 。。。
> db.urls.find({url:/girls/i}) 查询有 girls 这个单词的 url 不区分大小写
查看集合中的索引
> db.system.indexes.find();
{ "v" : 1, "key" : { "_id" : 1 }, "ns" : "test.foo", "name" : "_id_" }
{ "v" : 1, "key" : { "_id" : 1 }, "ns" : "test.ff", "name" : "_id_" }
{ "v" : 1, "key" : { "_id" : 1 }, "ns" : "test.virus", "name" : "_id_" }
{ "v" : 1, "key" : { "name" : 1 }, "ns" : "test.foo", "name" : "name_1" }
删除索引
> db.foo.dropIndex({name:1})
{ "nIndexesWas" : 2, "ok" : 1 }
> db.system.indexes.find();
{ "v" : 1, "key" : { "_id" : 1 }, "ns" : "test.foo", "name" : "_id_" }
{ "v" : 1, "key" : { "_id" : 1 }, "ns" : "test.ff", "name" : "_id_" }
{ "v" : 1, "key" : { "_id" : 1 }, "ns" : "test.virus", "name" : "_id_" }
>
db.test.ensureIndex({"userid":1},{"unique":true,"dropDups":true}) 给 userid 建立唯一值索引并且删除 已经存在的重复项。。。
//--- 以下转载
shell操作数据库: