MongoDB(課時13 where條件過濾)


3.4.2.8 條件過濾

關系型數據庫開發對於數據的篩選,想到的一定是where語句,MongoDB里面提供的是"$where"。

范例:使用where進行數據的查詢

db.students.find({"$where" : "this.age>20"}).pretty()

db.students.find("this.age>20").pretty()

這里的this表示逐條的判斷。

對於“$where”是可以簡化的,但是這類的操作是屬於進行每一行的信息判斷,實際上對於數據量較大的情況並不方便。實際上以上的代碼嚴格來講是屬於編寫一個操作的函數。

db.students.find(function(){

  return this.age > 20;

}).pretty()

db.students.find({"$where" : function(){

  return this.age > 20;

}}).pretty()

以上只是查詢了一個判斷,如果要想實現多個條件的判斷,那么就需要使用“and”連接。

db.students.find({"$and" : [

  {"$where" : "this.age > 19"},

  {"$where" : "this.age < 21"}

]}).pretty()

雖然這種形式的操作可以實現數據查詢,但最大缺點是將MongoDB里面保存的BSON數據變為JavaScript的語法結構,這樣的方式不方便使用數據庫的索引機制。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM