Mongodb 資料的高階查詢

2021-10-07 19:25:34 字數 1850 閱讀 7550

db.集合名稱.find()

db.集合名稱.findone({})

db.集合名稱.find({})

db.集合名稱.find({}).pretty()

> db.test1.find()

> db.test1.find()

> db.test1.find()

2020-07-05t22:13:47.779+0800 referenceerror: zhang2 is not defined

> db.test1.find()

> db.test1.find().pretty()

> db.test1.findone()

比較運算子

等於:預設是等於判斷,沒有運算符號

小於:$lt

小於等於:$lte

大於:$gt

大於等於:$gte

不等於:$ne

db.stru.find(})

範圍運算子

使用"$in","$nin" 判斷是否在某個範圍內

查詢年齡為18,28的學生

db.stu.find(})

> db.test1.find(})

2020-07-05t22:26:11.858+0800 syntaxerror: unexpected token }

> db.test1.find(})

2020-07-05t22:26:19.498+0800 syntaxerror: unexpected token }

> db.test1.find()

> db.test1.find(})

邏輯運算子

and:在語句中寫多個條件即可

or:使用$or

查詢年齡大於18,或者性別為false的學生

db.stu.find(},]})

查詢年齡大於18或性別為男的學生,並且姓名是zhangsan

db.stu.find(},],name:"zhangsan"})

支援正規表示式

使用//或$regex編寫正規表示式

db.products.find()  查詢欄位sku 以abc結尾的

db.products.find(})  查詢欄位sku以789結尾的

> db.test2.find()

> db.test2.find(})

limit與skip

方法limit()  用於讀取指定數量的資料

db.集合名稱.find().limit(number)

方法skip()用於跳過指定數量的資料

db.集合名稱.find().skip(number)

> db.test2.find().limit(2)

> db.test2.find().skip(2)

自定義查詢

使用$where後面寫乙個函式,返回滿足條件的資料,查詢年齡大於30的學生

db.stu.find(})

},)排序操作

公升序db.stu.find().sort()

db.stu.find().sort()

降序db.stu.find().sort()

統計數目 .count()

消除重複

db.stu.distinct(『hometown』,})

> db.test1.distinct("age")

[ "13", 12, 13 ]

> db.test1.count()

9

MongoDB查詢高階

投影 對返回的結果進行篩選,返回必要的字段 db.col.find 引數為字段與值,值為1表示顯示 特殊 對於 id列缺省是顯示的,如果不顯示需要明確設定為0 mongodb查詢條件除了支援使用比較運算子之外,還支援範圍 正則 邏輯運算子 分頁 排序 統計個數等 邏輯運算子 and條件 find 方...

mongoDB高階查詢解析

資料查詢 find 查詢 db.集合名稱.find findone 查詢,只返回第乙個 db.集合名稱.findone pretty 將結果格式化n db.集合名稱.find pretty 比較運算子 等於 預設是等於判斷,沒有運算子 小於 lt less than 小於等於 lte less th...

MongoDB下的高階查詢示例

mongo mongodb shell version 1.8.1 connecting to test db test show collections data test system.indexes system.users db.data test.find skip 3 limit 4 分...