读取
db.collection.find()
1
2
3
4
|
db.users.find( { age: {$gt: 18}}, { name : 1, address: 1} ).limit(5).sort({age:1}) |
users是collection名字,从users中查找;
age是query criteria,筛选结果,代表查找name字段的值比18大的;
name是projection,筛选列(1代表存在, 0代表不存在),代表返回结果中包含name,address,_id(默认包含字段)字段的值;
limit是cursor modifier,代表返回最多5条;
sort是排序,通过age的值进行排序。
注:
1. 所有的查询只能针对一个单独的collection;
2. 除非使用sort,否则查询结果没有排序;
db.collection.findOne() 是返回一个值.
db.collection.find()返回cursor类型。
插入
db.collection.insert()
1
2
3
4
5
6
7
|
db.users. insert ( { name : "sue" , age:22, status: "A" } ) |
注:
1. 如果insert语句中没有_id属性,mongod会自动加一个_id属性,并产生一个唯一的值,ObjectId.
2. 如果insert语句中带有_id属性,必须保证它的值是唯一的,如果重复,会返回异常.
3. update()和save()操作也可以实现插入功能.
更新
db.collection.update() or db.collection.save()
1
2
3
4
5
|
db.users. update ( {age:{$gt:18}}, --update criteria {$ set :{status: "A" }}, --update action {multi: true } --update option ) |
注:
1. 默认情况下,update方法只更新一个document,但是如果设置multi参数为true,可以更新所有符合的documents
2. save方法只能更新一个单一document
删除
db.collection.remove()
1
2
3
|
db.users.remove( {status: "D" } --remove criteria ) |
注:
1. 默认情况下,remove方法删除掉符合条件的所有documents