Mongodb的查詢操作
1、查詢全部集合
db.myMongodb.post.find()
如果是console的話,默認顯示20條記錄
2、返回指定的鍵
db.myMongodb.post.find({}, {"foo" : 1, "baz" : 1})
返回鍵foo和健baz,同時默認返回_id鍵的值
3、指定不返回的鍵
db.myMongodb.post.find({}, {"foo" : 0})
返回除foo之外的其他鍵
4、判定條件查詢
a) “$lt” 小于
b) “$lte”小于等于
c) “$gt”大于
d) “$gte”大于等于
e) “$ne”不等于
db.myMongodb.user.find({"age" : {"$gte" : 18, "$lte" : 30}})
5、其他條件查詢
a) “$in” :是否在某一個集合的查詢
db.myMongodb.user.find({"age" : {"$in" : [17,18,19]}})
b) “$nin”:與in相對應,不處于某個結合的文檔
c) “$or”:多條件查詢
db.myMongodb.user.find({"$or" : [{"age" : 17}, {"age" : 18}]})
d) “$not”非的情況下使用。其他條件可以基于它
e) “$mod”取模查詢
f) “$null”可以匹配值為null的字段,同時也能匹配鍵不存在的文檔
如果同時要判定鍵存在,需要加上"$exists" 判定
6、查詢數組
a) “$all” 通過多個元素匹配數組
db.myMongodb.food.find({"fruit" : {"$all" : ["apple", "oracle"]}})
b) 數組下標匹配
db.myMongodb.food.find({"fruit.2" : "peach"})
c) "$size"數組長度匹配
db.myMongodb.food.find("fruit" : {"$size" : 3})
7、"$slice"指定返回集合的個數
db.myMongodb.posts.find(criteria, {"$silce" : n})
n = 10 返回前10條記錄
n = -10 返回后10條記錄
n = [23, 10] 返回從23條記錄開始的10條記錄,感覺應該可以做分頁
8、采用點表示法查詢內嵌文檔(推薦)
db.myMongodb.find({"name.first" : "Wang", "name.last" : "Hai"})
9、采用分層的方式查詢
db.myMongodb.find({"name" : {"first" : "Wang, "last" : "Hai""}})
10、$where查詢
$where查詢非常強大,它可以添加js的函數實現高級的查詢功能。
基本樣式如下:
db.myMongodb.find({"$where" : function() {}})
如果function返回true,該記錄就返回。否則就不返回。
【對js不夠熟悉。。面壁去了】