|
-- 管理
#查看collection数据的大小
db.deliver_status.dataSize()
#查看colleciont状态
db.deliver_status.stats()
#查询所有索引的大小
db.deliver_status.totalIndexSize()
--创建集合
> db.createCollection("user");
--录入数据
> db.user.insert({uid:1,username:"Falcon.C", age:25});
> db.user.insert({uid:2,username:"aabc", age:24});
> db.user.insert({uid:2,username:"ttcv", age:24});
> db.user.insert({uid:1,username:"Falcon.C", age:25, year:1982});
> db.user.insert({uid:2,username:"aabc", age:24, year:1983});
> db.user.insert({uid:2,username:"ttcv1", age:23, year:1984});
> db.user.insert({uid:2,username:"ttcv2", age:25, year:1984});
--录入多属性数据
> db.user.insert({uid:2,username:"李三", age:25, year:1984, area:"beijing", attr:1});
> db.user.insert({uid:2,username:"李三", age:25, year:1984, area:"beijing", country:'CICO', attr:2});
> db.user.insert({uid:2,username:"李三", age:25, year:1984, area:"shanghai", product:'P1', attr:3});
> db.user.insert({uid:2,username:"李三", age:25, year:1984, area:"hangzhou", attr:3});
> db.user.insert({uid:2,username:"李三", area:"shengzhen", age:25, year:1984, unit:'RMB', attr:3});
> db.user.insert({uid:2,username:"李三", age:25, year:1984, attr:2});
> db.user.insert({uid:2,username:"李三", age:25, attr:1});
> db.user.insert({uid:2,username:"李三", attr:0});
--查询数据
> db.user.find();
> db.user.find({uid:1});
> db.user.find({"username":"日志"});
--多属性查询
> db.user.find({"username":"李三","age":26, year:1983});
> db.user.find({"username":"李三","age":25});
> db.user.find({"username":"李四"});
-- 查询x、b属性必须存在,attr字段=3的记录。
> db.c1.find({x:{'$exists':true},b:{'$exists':true}, attr:3});
--// get all posts about 'tennis' but without the comments field
> db.posts.find( { tags : 'tennis' }, { comments : 0 } );
> db.c1.find({b:2},{x:0});
> db.c1.find({b:2},{x:null});
-- 二层查询,多层次查询
> t.find({})
{ "_id" : ObjectId("4c23f0486dad1c3a68457d20"), "x" : { "y" : 1, "z" : [ 1, 2, 3 ] } }
> t.find({}, {'x.y':1})
{ "_id" : ObjectId("4c23f0486dad1c3a68457d20"), "x" : { "y" : 1 } }
-- 分页
db.posts.find({}, {comments:{$slice: 5}}) // first 5 comments
db.posts.find({}, {comments:{$slice: -5}}) // last 5 comments
db.posts.find({}, {comments:{$slice: [20, 10]}}) // skip 20, limit 10
db.posts.find({}, {comments:{$slice: [-20, 10]}}) // 20 from end, limit 10
--倒序
> db.user.find({}).sort({uid:-1});
--升序
> db.user.find({}).sort({uid:1});
-- 双排序 失败
> db.user.find({}).sort({uid:-1},{username:-1});
--更新数据
> db.user.update({uid:1},{$set:{age:26}});
--在原来的基础上减1
> db.user.update({uid:1},{$inc:{age:-1}})
更新的条件还有$unset、$push 、$pushAll 、$pop 、$pull 、$pullAll等等
-- 添加一个新的节点age
> db.c1.update({a:1},{$set:{age:25}});
-- 移除一个节点
> db.c1.update({a:1},{$unset:{age:25}});
====================================================================================
> t = db.mycoll;
> t.insert({x:3});
> t.insert( {x : 2.9} );
> t.insert( {x : new Date()} );
> t.insert( {x : true } )
> t.find().sort({x:1})
|
|