mongodb 學習筆記 03,mongodb學習筆記

來源:互聯網
上載者:User

mongodb 學習筆記 03,mongodb學習筆記
mongodb 學習筆記 03 – 查詢運算式

不等於,大於,小於

  • !=: db.stu.find({name:{$ne:’billvsme’}}) 名字不是’billvsme’
  • > : db.stu.find({age:{$gt:18}}) 年紀大於18
  • < : db.stu.find({age:{$lt:18}}) 年紀小於18
  • >=: $gte
  • <=: $lte

in/not in/all

  • $in :db.goods.find(stu_id:{$in:[93001,93002,93003]}) 學號為93001或者93002或者93003
  • $nin :not in
  • $all :指定的內容都有 db.stu.find({like:{$all:[‘football’,’basketball’]}}) 喜歡籃球跟足球的學生

or/and/not/nor

  • $or :或
  • $and : 且 例子 db.stu.find({$and:[{age:{$gt:18}},{age:{$lt:22}}]}) 年紀在18到22誰之間
  • $not : 非
  • $nor : 如果你寫的條件都不為真,則返回這一條

exists/mod/type

  • $exists : 例子 db.find({body:{$exists:1}}) 存在body欄位的列
  • $mod : 滿足求餘數,例子 db.stu.find({stu_id:{$mod:[5,0]}}) 取學號是5的倍數的
  • $type : 滿足類型 例子 db.stu.find({age:{$type:2}}) age段類型是string的列。2:表示類型代碼 具體見http://docs.mongodb.org/manual/reference/operator/query/type/#op._S_type

where/regex
(要慎用,因為如果使用,mongo要先把二進位的bson轉化成json然後操作,效率低)

  • $where :js運算式為真則為真。例子 db.stu.find({$where:’this.age>18’}) 年齡大於18
  • $regex :Regex為真則為真。例子 db.stu.find({name:{$regex:’^bill’}}) 姓名以bill開頭的

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.