2017-10-07 75 views
-1

當我在集合Mongo的insertOne()文檔中添加第一個和最後一個文檔之間的文檔。 它預計會在最後添加,對吧?但對我來說最好是在開始時添加文檔,例如,作爲.unshift() JS的作品。 我正在構建博客,因此應該在列表頂部添加新帖子。 但我總是可以.reverse()當然。 主要問題是爲什麼中間添加了文檔。Mongo在集合中添加文檔

回答

2

您應該按照創建時間(當您嘗試按創建時間排序時)對集合進行排序,而不是嘗試更改集合中插入的順序。

db.posts.find().sort({creation_time: -1}) 

通過這種方式,最近的條目將排在最前面。

編號:https://docs.mongodb.com/manual/reference/method/cursor.sort/#cursor.sort

+0

我有我的'date'這種格式** DD/MM/YYYY **我試圖對它進行排序它只是通過第一號'dd'排序。不考慮整個字符串。有任何解決這個問題的方法嗎? –

+0

您需要將日期/時間數據存儲爲[mongodb Date()](https://docs.mongodb.com/manual/reference/method/Date/),而不是字符串,這樣排序才能正常工作。如果您仍然希望將日期保留爲字符串,那麼您必須編寫自定義排序功能。 – falloutx

相關問題