国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數據庫技術|

服務器之家 - 數據庫 - MongoDB - MongoDB查詢之高級操作詳解(多條件查詢、正則匹配查詢等)

MongoDB查詢之高級操作詳解(多條件查詢、正則匹配查詢等)

2020-12-19 22:02w田翔 MongoDB

這篇文章主要給大家介紹了關于MongoDB查詢之高級操作(多條件查詢、正則匹配查詢等)的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習

MongoDB查詢之高級操作

語法介紹

MongoDB查詢文檔使用find()方法,同時find()方法以非結構化的方式來顯示所有查詢到的文檔。

?
1
2
3
4
5
6
7
8
9
10
-- 1.基本語法
db.collection.find(query, projection) -- 返回所有符合查詢條件的文檔
db.collection.findOne(query, projection) -- 返回第一個符合查詢條件的文檔
-- query:可選,查詢條件操作符,用于指定查詢條件
-- projection:可選,投影操作符,用來指定需要返回的鍵(默認省略)
-- 例1:查詢users集合中年齡為18的所有文檔
db.users.find({age: 18})
 
-- 2.如果需要以易讀的方式來觀察數據,可以使用pretty()方法
db.collection.find(query, projection).pretty()

AND 條件與 OR 條件

MongoDB的find()方法可以傳入多個鍵,每個鍵以逗號隔開,這樣即可起到SQL的AND條件

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
-- 1.AND條件基本語法
db.collection.find({key1:value1, key2:value2})
-- 例1:查詢users集合中年齡為18的女生的所有文檔
db.users.find({age: 18, sex: 'girl'})
 
-- 2.OR條件基本語法
db.collection.find({
 $or: [
 {key1: value1},
 {key2:value2}
 ]
})
-- 例2:查詢users集合中年齡為18或性別為女生的所有文檔
db.users.find({
 $or: [
 {age: 18},
 {sex: 'girl'}
 ]
})

條件操作符

條件操作符用處理條件關系以從MongoDB中查詢符合條件的文檔數據,條件操作符如下:

  • 大于:$gt
  • 小于:$lt
  • 大于等于:$gte
  • 小于等于:$lte
?
1
2
3
4
5
6
7
8
-- 查詢users集合中年齡大于18歲的文檔數據
db.users.find({age : {$gt : 18}})
-- 查詢users集合中年齡小于18歲的文檔數據
db.users.find({age : {$lt : 18}})
-- 查詢users集合中年齡大于等于18歲的文檔數據
db.users.find({age : {$gte : 18}})
-- 查詢users集合中年齡大于等于18歲的文檔數據
db.users.find({age : {$lte : 18}})

$type操作符

$type操作符是基于BSON類型來檢索集合中匹配的數據類型,MongoDB中可以使用查詢的數據類型如下表:

 

類型 $type代表數字 說明
Double 1 64位浮點數
String 2 字符串類型
Object 3 對象類型
Array 4 數組類型
Binary Data 5 二進制數據類型
Objectid 7 對象id類型
Boolean 8 布爾類型
Date 9 日期類型
Null 10 用于表示空值或不存在的字段
Regular Expression 11 正則表達式類型
JavaScript 13 JavaScript代碼
JavaScript (with scope) 15 帶作用域的JavaScript代碼
32-bit integer 16 32位整數
Timestamp 17 時間戳類型
64-bit integer 18 64位整數
Min key -1 最小鍵
Max key 127 最大鍵

 

下面我將使用$type,作為查詢條件舉例說明:

?
1
2
-- 例:查詢users集合中,姓名為字符串類型的文檔
db.users.find({"name" : {$type : 2}})

查詢中使用limit()、skip()、sort()方法

  1. limit()方法指根據查詢條件讀取指定數量的文檔數據記錄。
  2. skip()方法指跳過指定數量的文檔數據,從其后按照查詢條件查詢。
  3. sort()方法指將查詢到的文檔數據按照指定字段進行升序或降序排序,字段值為1指升序,字段值為-1指降序。
  4. 下面我將使用limit()與skip()方法舉例說明。
?
1
2
3
4
5
6
7
8
-- 使用語法(limit()、skip()、sort()方法可以組合使用)
db.collectionName.find().limit(NUMBER)
db.collectionName.find().skip(NUMBER)
db.collectionName.find().sort({"key": 1/-1})
-- 例1:跳過前50條數據查詢users集合中姓名字段為字符串類型的100之內的數據
db.users.find({"name" : {$type : 2}}).limit(100).skip(50)
-- 例2:將查詢到users集合中姓名字段為字符串類型的文檔數據按升序排列
db.users.find({"name" : {$type : 2}}).sort({"name": 1})

查詢中使用正則表達式

這里先介紹一下正則表達式:正則表達式是使用單個字符串來描述、匹配一系列符合某個句法規則的字符串。

MongoDB中使用$regex操作符來設置匹配字符串的正則表達式語言。

?
1
2
3
4
5
-- 使用語法
db.collectionName.find({key:{ $regex: regex, $options: options }})
-- 例:不區分大小寫查詢users集合中姓名包含web的文檔數據(以下兩種方式查詢結果相同)
db.users.find({ "name" : { $regex : "web", $options: "i" } })
db.users.find({ "name" : /web/i } })

總結

到此這篇關于MongoDB查詢之高級操作(多條件查詢、正則匹配查詢等)的文章就介紹到這了,更多相關MongoDB多條件查詢、正則匹配查詢內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://segmentfault.com/a/1190000037451303

延伸 · 閱讀

精彩推薦
  • MongoDBmongodb基本命令實例小結

    mongodb基本命令實例小結

    這篇文章主要介紹了mongodb基本命令,結合實例形式總結分析了MongoDB數據庫切換、查看、刪除、查詢等基本命令用法與操作注意事項,需要的朋友可以參考下...

    dawn-liu3652020-05-26
  • MongoDB遷移sqlserver數據到MongoDb的方法

    遷移sqlserver數據到MongoDb的方法

    這篇文章主要介紹了遷移sqlserver數據到MongoDb的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下...

    聽楓xl9682021-01-03
  • MongoDBMongoDB 內存使用情況分析

    MongoDB 內存使用情況分析

    都說 MongoDB 是個內存大戶,但是怎么知道它到底用了多少內存呢...

    MongoDB教程網10002020-09-29
  • MongoDBMongoDB中javascript腳本編程簡介和入門實例

    MongoDB中javascript腳本編程簡介和入門實例

    作為一個數據庫,MongoDB有一個很大的優勢——它使用js管理數據庫,所以也能夠使用js腳本進行復雜的管理——這種方法非常靈活 ...

    MongoDB教程網6982020-04-24
  • MongoDBMongodb實現定時備份與恢復的方法教程

    Mongodb實現定時備份與恢復的方法教程

    這篇文章主要給大家介紹了Mongodb實現定時備份與恢復的方法教程,文中通過示例代碼介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面...

    chenjsh364522020-05-13
  • MongoDBMongoDB安裝圖文教程

    MongoDB安裝圖文教程

    這篇文章主要為大家詳細介紹了MongoDB安裝圖文教程,分為兩大部分為大家介紹下載MongoDB和安裝MongoDB的方法,感興趣的小伙伴們可以參考一下 ...

    Yangyi.He6132020-05-07
  • MongoDB分布式文檔存儲數據庫之MongoDB分片集群的問題

    分布式文檔存儲數據庫之MongoDB分片集群的問題

    這篇文章主要介紹了分布式文檔存儲數據庫之MongoDB分片集群的問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋...

    Linux-18743072020-12-20
  • MongoDBMongoDB憑什么躋身數據庫排行前五

    MongoDB憑什么躋身數據庫排行前五

    MongoDB以比去年同期超出65.96分的成績繼續雄踞榜單前五,這個增幅在全榜僅次于PostgreSQL的77.99,而其相對于4月份的6.10分的增長也是僅次于微軟SQL Server排名...

    孫浩峰3892020-05-22
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 精品国产乱码久久久久久丨区2区 | 久久久成人av | 亚洲免费在线观看 | 国产成人精品一区二区 | 最新黄色网址在线播放 | 欧美狠狠操 | 日日做 | 亚洲热综合 | 日韩中文字幕在线播放 | 国产精品久久久久白丝呻吟 | 日本一区二区三区免费观看 | 国产在线视频网站 | 国产免费一区二区三区 | 日韩成人精品在线 | 超碰在线免费福利 | 欧美日韩亚洲综合 | 99热婷婷 | 国产一区二区在线视频 | 日本精品久久久 | 成人午夜视频在线 | 日本在线播放 | 狠狠操av | 精品久久久久久久久久久久久久 | 成人午夜在线 | 婷婷久久久 | 午夜av电影| av一区二区三区 | 黄色一级毛片在线观看 | 国产精品久久久久久久一区探花 | 99久久久国产精品 | 国产亚洲精品久久久久久 | 大香伊蕉在人线视频777 | 精品国产青草久久久久福利 | 99视频在线 | 中文字幕高清在线播放 | 91免费在线视频 | 国产成人精品一区二区三区视频 | 欧美日韩在线观看视频 | 久色视频在线观看 | 国产9色在线 | 日韩 | 免费日韩一级片 |