MongoDB 之 Limit 選取 Skip 跳過 Sort 排序 MongoDB - 7

咱們已經學過MongoDB的 find() 查詢功能了,在關係型數據庫中的選取(limit),排序(sort) MongoDB中一樣有,並且使用起來更是簡單數據庫

首先咱們看下添加幾條Document進來學習

如今有四條Document 根據它們, 對 Limit Skip Sort 分別展開學習 最後來一個 大雜燴3d

 

1. Limit 選取 : 我要從這些 Document 中取出多少個blog

作個小例子 : 我只要 2 條 Document排序

結果是很明顯的,很赤裸裸的,很一絲不掛的ip

可是我仍是要解釋一下 : limit(2) 就是選取兩條Document, 從整個Collection的第一條 Document 開始選取兩條it

若是咱們不想從第一條Document開始選取,怎麼辦呢?io

 

2.Skip 跳過 : 我要跳過多少個Documentim

作個小例子 : 我要跳過前兩個 Document 直接從第三個Document 開始d3

結果仍是很明顯,很赤裸

按照國際慣例解釋一下 : skip(2) 就是跳過兩條Document, 從整個Collection 的第一條 Document 開始跳,日後跳兩條

另外一個例子 : 跳過第一條 直接從 第二條 開始

問題來了,我只想要第二條和第三條怎麼處理呢?

 

3.Limit + Skip : 從這兒到那兒 的 選取

就是剛纔的問題,一個小例子 : 我只想要第二條和第三條怎麼處理呢

國際慣例 : 跳過第一條Document 從第二條開始選取兩條 Document

彆着急,還有另外一種寫法

兩種寫法徹底獲得的結果徹底同樣可是國際慣例的解釋卻不一樣

國際慣例 : 選取兩條Document 可是要 跳過 第一條Document 從 第二條 開始 選取

繞了半天,都暈了,注意這裏特別要注意了!!!!!! 這裏的兩種寫法,必定必定必定要記住一個,由於只要記住一個就好了,徹底徹底沒區別,一個符合中國人的理解,一個是其餘國家的理解

 

4. Sort 排序 : 將結果按照關鍵字排序

作個小例子 : 將find出來的Document 按照 price 進行 升序 | 降序 排列

國際慣例 : 按照 price 字段進行升序 , 1 爲升序 , -1 爲降序

 

5. Limit + Skip + Sort 混搭來一把

一個例子 : 選取第二條第三條 並 按照 price 進行 升序排列

問題出現了, 按道理不該該是 9800 而後 19800 嗎?

知識點來嘍

重點 : Sort + Skip + Limit 是有執行優先級的 他們的界別分別是 優先 Sort  其次 Skip 最後 Limt

Skip + Limit 的優先級 也是先 Skip 再 Limit

 

看一次,記不住

看兩次,不會用

看三次,不如本身作一次

作一次,不如作三次

 

練習一下加深印象

相關文章
相關標籤/搜索