有沒有人使用MongoDB的數組類型來實現堆棧?使用MongoDB數組作爲堆棧
我知道我可以append
到一個數組,像這樣:
db.blogposts.update({_id:5}, {$push: {comments: {by: "Abe", text:"First"}}})
這裏,數組的結尾是堆棧的頂部...我不明白的方式以實現此在第零指數的堆棧頂部,但我很想錯。
而且我知道我可以peek
在的陣列,像這樣的最後一個值:
db.blogposts.find({_id:5}, {comments: {$slice:-1}})
有了這樣的一個實現,我可以「偷看」在棧中的MongoDB更新頂部聲明?這會給我語義,「如果堆棧頂部是X,則將此項目推送到堆棧上」。我需要這是一個原子操作!
任何意見讚賞。謝謝!
看起來像推到一個數組的開頭尚未實現:HTTPS://jira.mongodb .org/browse/SERVER-2191?page = com.atlassian.jira.plugin.system.issuetabpanels%3Aall-tabpanel – 2012-04-10 18:52:42
重複的[你可以有mongo $ push prepend而不是append?](http://stackoverflow.com/questions/10131957/can-you-have-mongo-push-prepend-instead-append) – 2015-08-15 04:29:38