最近学习monogdb,在用update是,发现在一个问题。
按官方文档上的信息,$addToSet and $each是往一个数组里插入每个记录,并保证元素唯一。
如:
> db.search_loggers.update({user_id : 2}, {$addToSet : {words : {$each : [ 1, 2, 1, 2, 1]}}}, true)
查看结果:
> db.search_loggers.find()
{ "_id" : ObjectId("4f90be7a09ee78ef9db6e01c"), "user_id" : 2, "words" : [ 1, 2 ] }
再来个English的:
> db.search_loggers.update({user_id : 2}, {$addToSet : {words : {$each : [ "me", "me"]}}}, true)
查看结果:
> db.search_loggers.find()
{ "_id" : ObjectId("4f90be7a09ee78ef9db6e01c"), "user_id" : 2, "words" : [ 1, 2, "me" ] }
上面都没问题,来个中文的:
> db.search_loggers.update({user_id : 2}, {$addToSet : {words : {$each : [ "他", "他", "他" ]}}}, true)
查看结果:
> db.search_loggers.find()
{ "_id" : ObjectId("4f90be7a09ee78ef9db6e01c"), "user_id" : 2, "words" : [1, 2, "me", "他" ] }
还是没问题,但如果先插入中文:
> db.search_loggers.update({user_id : 3}, {$addToSet : {words : {$each : [ "他", "他", "他", 1, 2, 3, "me", "me"]}}}, true)
查看结果:
> db.search_loggers.find()
{ "_id" : ObjectId("4f90c47609ee78ef9db6e01d"), "user_id" : 3, "words" : [ "他", "他", "他", 1, 2, 3, "me", "me" ] }
悲剧了,没有进行深入的学习,但觉得这是个bug,如有了解的,给解释一下,感激不尽!
分享到:
相关推荐
MongoDB的$type操作符.pdf 学习资料 复习资料 教学资源
MongoDB and Python Patterns and processes for the popular document-oriented database
该程序包包含用于处理MongoDB的$jsonSchema验证消息的助手(或任何您称呼的助手)。 截止到今天( 2020-03-10 ),当文档无法插入或更新时,它不支持适当的错误消息。 此问题将通过解决。 但是,如果一切顺利,它...
Spring Data MongoDB中文文档 便宜下载了。
MongoDB 3.6 中文文档
mongoDB中文文档和一个可以运行的dome,其中包括mongoDB索引,管道,事务,集合和crud等基本操作
MongoDB: The Definitive Guide by Kristina Chodorow and Michael Dirolf Copyright © 2010 Kristina Chodorow and Michael Dirolf. All rights reserved.
因为MongoDB的文档有数组字段,所以可以简单的将计算总和分成两种: 1,统计符合条件的所有文档的某个字段的总和; 2,统计每个文档的数组字段里面的各个数据值的和。这两种情况都可以通过$sum表达式来完成。 以上两...
MongoDB操作手册详细介绍MongoDB的语法用法
Python MongoDB 应用开发,构建高效稳定数据库应用系统
NoSQLBooster 管理MongoDB的工具。这个工具还有个曾用名--mongobooster
MongoDB Java API 中文
Spring Data MongoDB 2.1中的新特性 5.2。Spring Data MongoDB 2.0中的新特性 5.3。Spring Data MongoDB 1.10中的新特性 5.4。Spring Data MongoDB 1.9中的新特性 5.5。Spring Data MongoDB 1.8中的新特性 5.6。...
Beginning with a short introduction to the basics of NoSQL databases, MongoDB experts Navin Sabharwal and Shankatala Gupta Edward introduce readers to MongoDB – the leading document based NoSQL ...
该版本navicat permium 是英文版本,在原来的基础上支持mongodb连接,支持mongodb连接的暂无中文版本,官方只发布了英文版本,有喜欢的朋友快来下载吧
深入学习MongoDB:Scaling MongoDB && 50 Tips and Tricks for MongoDB Developers深入学习MongoDB中文版Scaling MongoDB英文版50 Tips and Tricks for MongoDB Developers英文版高清完整目录3本打包合集
Build an interactive and full-featured web application from scratch using Node.js and MongoDB About This Book Configure your development environment to use Node.js and MongoDB Use Node.js to connect ...
Spring Data MongoDB 中文参考文档和Springboot使用例子,其中还介绍了spring-data-mongodb 如何使用mongodb的全文检索。
azw3 MongoDB and Python Patterns and Niall O'Higgins