1. 程式人生 > >MongoDB 學習筆記(二) 之查詢

MongoDB 學習筆記(二) 之查詢

最簡單的查詢 個人認為mongoDB是面向物件的吧。

例如最簡單的查詢  整個資料集只有三條資料


第一查詢姓名為張三的  資料


查詢的條件比較好寫 隨意   db.collection.find(查詢條件)   例如

15


得到的結果是這樣 

如果你不想返回某個欄位呢 ,你可以自己定義返回的欄位值 語法這樣 db.collection.find({查詢條件},{返回欄位})

16


我們看到每次查詢 “_id” 這個欄位 都返回  我們可以將它設定為0 這樣的話就不會返回 

如 



查詢條件裡的鍵值對中的值需為常量這樣查詢是不被允許的  > db.student.find({"name" : "this.sex"}) 

查詢條件符號 

$lt  less than   

$lte   less than or equal

$gt   greater than 

$gte  greater than or equal

$in     in  

$nin  not in 

$or    or

$mod

$nod  not equal mode

例如查詢年齡小於20的學生 

18

或者查詢年大於18而小於26的學生

19

查詢基本上就是這樣啦  

年齡為18或者25的學生  $in語法

20

$or   db.collection.find({"$or":[{condition0},{condition1}]})

21 $or 語法


查詢條件為最小單位 ,即可簡單如它  {"name":"zhangsan"}  姓名是張三的  

也可已複雜如它    {"$or":[{"name":{"$in":["zhangsan","lisi"]}},{"age":{"$lt":26,"$gt":18}}]}

名字是張三或者李四的  或者 年齡 小於26大於18的


有必要說下mongo的Date型別  

new Date() 返回的是一個Date Object  而 Date()返回的是一個String類型的字串  JavaScript就是這麼幹的,如果混著用的話 會出問題當查詢,更新,或者刪除的時候,所以用date型別的時候要小心加小心。另外日期物件是可以比較大小的(儲存的是 新紀元到當前時間(格林尼治)的毫秒數),而String我先呵呵了

可以做個小實驗來區別


明天繼續探索