java - 为什么聚合函数没有给出预期的结果?
问题描述
试图更改特定字段中所有值的数据类型,而不使用迭代器。
这里 tid 是字段名
我尝试使用在 Mongo 中运行代码
var ch ={"$addFields" : { "tid" : { "$convert":{"input":"$tid" , "to" : 2}}}}
db.test.aggregate(ch);
我的收藏在哪里测试
Java 代码:
BasicDBObject fieldObject = new BasicDBObject();
fieldObject.put("$convert",new BasicDBObject().append("input",
"$tid").append("to", 2));
BasicDBObject addField = new BasicDBObject("$addFields",new
BasicDBObject("tid",fieldObject));
System.out.println(addField);
List<BasicDBObject> options = new ArrayList<>();
options.add(addField);
details.aggregate(options);
当我在 mongo 命令行中运行代码时,数据类型正在从 Integer 更改为 String。但是当我通过java代码运行它时没有变化。我的 Java 代码有什么问题吗?
解决方案
推荐阅读
- c++ - MFC 使用指针数组的正确方法?
- python - Unhashable 类型:使用 GridSearchCV 进行 KNN 超参数调整时出现“numpy.ndarray”错误
- c - C 中的预处理器指令
- python - 如何在 discord.py 中捕获错误并发送响应?
- intellij-idea - 如何使嵌入式 Kafka 规则不显示两个测试产生的数据
- c - C编程中的分段错误错误
- python - 如何将元组应用于我的代码,以便获得输出“{('a', 'x'))”?
- javascript - 带有 axios 的 es6 异步模块 - ReferenceError: 未定义要求
- oracle - 从oracle sql中的函数中的游标返回值?
- python - 为什么我不能手动复制 nd 数组?