我來自MySQL,你可以有一個巨大的INSERT和添加(或ON DUPLICATE KEY UPDATE)在一個單一的查詢一堆行,而不是有一個單獨的查詢每個循環的循環。似乎在MongoDB中沒有類似的選項。那是對的嗎?是否可以在MongoDB中使用單個命令插入或更新多個文檔?
我意識到這與MongoDB基於對象的方法不完全兼容。發送成千上萬條命令似乎效率不高,特別是如果數據庫位於單獨的服務器上。
我來自MySQL,你可以有一個巨大的INSERT和添加(或ON DUPLICATE KEY UPDATE)在一個單一的查詢一堆行,而不是有一個單獨的查詢每個循環的循環。似乎在MongoDB中沒有類似的選項。那是對的嗎?是否可以在MongoDB中使用單個命令插入或更新多個文檔?
我意識到這與MongoDB基於對象的方法不完全兼容。發送成千上萬條命令似乎效率不高,特別是如果數據庫位於單獨的服務器上。
是的。在java中,這就是它的樣子。
是的,低層次的接口支持這樣的事情:
db.nonsense.update({a: 'a'}, {$set: {b: 'X'}}, false, true);
這是這樣的SQL:
update nonsense
set b = 'X'
where a = 'a'
你要最後一個參數(multi)是true
或你不會更新所有匹配的條目。
這可能是有用的:
http://www.mongodb.org/display/DOCS/SQL+to+Mongo+Mapping+Chart