一.嵌入式文檔的查詢
{ "_id": 1, "user": { "name": "zhangsan", "user_id": 1, "age": 18 } }
直接用點取值就可以:
db.getCollection('test').find({'user.age':{$gt:18}},{'_id':0,'user.age':1})
二.數組查詢
{ "_id": 111, "size": ['x', 's', 'xl', 'm'], "name": "褲子",
"price":[100,300,400]
}
1.查詢數組包含的情況
db.getCollection('test').find({'size':'m'})
2.查詢數組不包含的情況
db.getCollection('test').find({'size':{$ne:'m'}})
3.查詢數組至少有一個元素在某個范圍
db.getCollection('test').find({'price':{'$gte:100,'$lt':500}})
4.數組長度查詢(長度必須是具體長度,而不能是范圍長度)
db.getCollection('test').find({'price':{'$size':2}})
5.數組索引查詢
db.getCollection('test').find({'size.0':'m'})
db.getCollection('test').find({'price.0':{'$gt':500}})