我们在使用$的时候,会发现以$开头的键处在不同的位置。在查询中,"$lt"在内层文档,而更新中"$inc"则是外层文档的键。基本可以肯定:条件句是内层文档的键,而修改器则是外层文档的键。
db.user.find({'age':{'$lt':30,'$gt':20}});
但是对于查询条件句就没有这种限定。
例:查找年龄为20~30的所有用户,可以在"age"键上使用"$gt"和"$lt":
一个键可以有多个条件,但是一个键不能对应多个更新修改器。例如,修改器文档不能同时含有{'$inc':{'age':1},'$set':{'age':40}}.因为修改了age两次.