阿神2017-04-18 10:00:12
如果_id是mongo自動產生的就用_id好了,如果_id也是你自己生成的那就只能你自己去定義一個排序的key了。
mongo的_id和mysql的id類似,差不多的。
mysql的你可以設定mysql自增,然後按照這個排序
mongo _id預設也是按照增長的。
MongoDB的文檔必須有一個_id鍵。
目的是為了確認在集合裡的每個文件都能被唯一標識。
ObjectId 是 _id 的預設型別。
ObjectId 採用12位元組的儲存空間,每個位元組兩位16進位數字,是一個24位元的字串。
12位元產生規則:
[0,1,2,3] [4,5,6] [7,8] [9,10,11]
時間戳|機器碼|PID |計數器
前四位是時間戳,可以提供秒級別的唯一性。
接下來三位是所在主機的唯一標識符,通常是機器主機名稱的雜湊值。
接下來兩位是產生ObjectId的PID,確保同一台機器上並發產生的ObjectId是唯一的。前九位保證了同一秒鐘不同機器的不同進程所產生的ObjectId時唯一的。
最後三位是自增計數器,確保相同進程同一秒鐘產生的ObjectId是唯一的
基本上就是在文件中的順序(因此往往也是insert的順序)。