我是mongodb的新手,目前我正面临着这个问题,

db.medical_records.aggregate([

{

"$group": {

"_id": {

"disease_id": "$disease_id" //a string

}, "count": { "$sum": 1 }

}

},

{

"$addFields": {

"disease_id": { "$toObjectId": "$disease_id" }

// i tried to change it into objectID so i could $lookup it

}

},

{

"$lookup": {

"from": "diseases",

"localField": "disease_id",

"foreignField": "_id",

"as": "disease"

}

}

])

这是我的医疗记录收集的一个例子

{

"_id" : ObjectId("5989c8f13f3958120800682e"),

"disease_id" : "5989c8f13f3958120800682f",

"patient_id" : "5989c8f13f3958120800681f"

}

疾病收集

{

"_id" : ObjectId("5989c8f13f3958120800682f"),

"name" : "Culpa autem officia.",

"code" : "Est aperiam."

}

而我期望的结果是那种,

{

"_id" : {disease_id: 5989c8f13f3958120800682f},

"count" : 20,

"disease" : {

"_id" : ObjectId("5989c8f13f3958120800682f"),

"name" : "Culpa autem officia.",

"code" : "Est aperiam."

}

}

如上所述,我需要将我的医疗记录收集到疾病收集中 .

当我尝试将其查找到疾病集合时,它失败了,因为foreignField与localField的类型不同 . 我一直在努力寻找解决这个问题的方法 . 上面的查询返回了另一个错误,

Unrecognized expression '$toObjectId'

这个问题可能已被问过几次,但我真的需要解决这个问题,请帮助

java objectid_需要一种解决方法来查找objectID foreignField的字符串相关推荐

  1. win8 java不是内部或外部命令_win8系统运行java提示“ava不是内部或外部命令两种解决方法...

    Java一种可以撰写跨平台应用软件的面向对象的程序设计语言,最近有一些小伙伴使用win10操作系统的时候遇到了一个问题,win8系统win8系统运行java突然提示"java不是内部或外部命 ...

  2. Java获取三个数字中的最大值[5种解决方法]

    第一种解决方法[if嵌套] public static int getMax1(int a, int b, int c) {int max = 0;if (a > b) {if (a > ...

  3. 按照姓名升序排序的代码_好程序员Java培训分享Java集合的两种排序方法

    好程序员Java培训分享Java集合的两种排序方法,Java集合的工具类Collections中提供了两种排序的方法,分别是: 1.Collections.sort(List list) 2.Coll ...

  4. idea连接不了5.6mysql_IDEA无法连接mysql数据库的6种解决方法大全

    本文主要介绍了IDEA无法连接mysql数据库的6种解决方法大全,分享给大家,具体如下: 1.本地的mysql没有创建该数据库(笔者就是这个原因!) 查看数据库发现没有,重建就可以了 测试成功! 网上 ...

  5. npm install 时,卡住不动,五种解决方法

    运行npm install 时,卡住不动,五种解决方法 检查网络设置,删除node_modules重新npm install 配置npm代理 // 配置nmp代理来提高速度,如设置淘宝镜像 npm c ...

  6. php7应用程序无法启动,window_win7系统打开软件提示应用程序无法启动的故障原因分析及2种解决方法,      nbs - phpStudy...

    win7系统打开软件提示应用程序无法启动的故障原因分析及2种解决方法 win7系统打开软件提示应用程序无法启动,因为应用程序的并行配置不正确,具体问题现象如下图所示: 故障原因分析: 一个可能是Win ...

  7. java中线程死锁的解决方法_Java线程死锁实例及解决方法

    这篇文章主要介绍了Java线程死锁实例及解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.死锁的定义 所谓死锁是指多个线程因竞争资源而造成 ...

  8. idea无法连接mysql_IDEA无法连接mysql数据库的6种解决方法大全

    IDEA无法连接mysql数据库的6种解决方法大全 本文主要介绍了IDEA无法连接mysql数据库的6种解决方法大全,分享给大家,具体如下: 1.本地的mysql没有创建该数据库(笔者就是这个原因!) ...

  9. php取数组中连续数,PHP实现求连续子数组最大和问题2种解决方法

    本文实例讲述了PHP实现求连续子数组最大和问题2种解决方法.分享给大家供大家参考,具体如下: 问题描述 求子数组的最大和 题目描述: 输入一个整形数组,数组里有正数也有负数. 数组中连续的一个或多个整 ...

最新文章

  1. Java微信公众平台开发(十)--微信自定义菜单的创建实现
  2. oracle创建dblink语句_一文看懂Oracle12c中多租户(容器)从种子创建PDB
  3. 授于某个用户有写作业和调度作业的权限
  4. C语言Fibonacci 数列
  5. linux python命令无反应_Python学习第164课--Linux命令行特殊符号的意义及命令的语法规则...
  6. C#获取文件(磁盘驱动器)的关联图标(使用API SHGetFileInfo)
  7. 详解Windows 搭建MRTG流量检控服务器
  8. WPF中ListBox的绑定
  9. Asp.net上传文件至目录
  10. 引用类型--Object类型、Array类型
  11. linux 系统tty、pty和pts 的概念及区别
  12. 未来杯总结1--cuda8.0+cuDnnv6+anavonda+tensorflow-gpu+keras+ubuntu16.04
  13. 华为荣耀7i刷linux,华为荣耀7i(ATH-AL00 全网通)ROOT教程,简单几步完成ROOT
  14. 移动魔百和M302A-ZN-S905L2_蓝牙语音正常_线刷免费固件包
  15. 艾伦·麦席森·图灵——如谜的解谜者
  16. 《巴菲特致股东的信》十年期固定行使价格期权对公司的侵蚀-计算过程演示
  17. 网络安全等级保护行业政策汇总
  18. Mqtt精髓系列之保留消息Retained Messages
  19. 毕业设计 微信小程序在线免费小说系统(源码+论文)
  20. [等保测评]Web应用防火墙WAF产品汇总

热门文章

  1. DevOps运维开发一体化 - 公开课笔记
  2. 【Flask】Nginx / Gunicorn入门:部署你的Flask项目
  3. 【Python】Flask框架系列(三):session和cookie操作、get/post请求、钩子函数
  4. 牛客网_PAT乙级1016_部分A+B (15)
  5. 分布式系统原理 之5 日志技术
  6. lucene的数据类型
  7. hdu 4284 floyd+暴搜
  8. 【详细解读】CSS渐变用法——Web前端系列学习笔记
  9. 【最新合集】研究生工程伦理课程答案整理
  10. C语言:5行代码解决 L1-045 宇宙无敌大招呼 (5分)