将sql查询转换为等效的mongodb查询

wvmv3b1j  于 2021-07-26  发布在  Java
关注(0)|答案(2)|浏览(322)

我需要你们的帮助来转换一个sql查询到mongodb查询。
我的问题是:

  1. select *
  2. from DocumentDetails
  3. where OldBatchDesc in (select top 1 OldBatchDesc
  4. from DocumentDetails
  5. where DocumentId = '2d0c4fef-21c8-4089-8e48-103055902741')
8cdiaqws

8cdiaqws1#

您的查询间接地希望获取文档ID为“2d0c4fef-21c8-4089-8e48-103055902741”的第一个条目
所以这里是mongodb查询

  1. db.DocumentDetails.find( { DocumentId : '2d0c4fef-8-4089-8e48-103055902741'} ).limit(1)
bhmjp9jg

bhmjp9jg2#

所以伙计们,我终于做到了。为未来读者提供解决方案。我用机器人。

  1. db.getCollection('documentdetails').aggregate([
  2. { "$match": {
  3. "OldBatchDesc": {
  4. "$in": db.getCollection('documentdetails').distinct("OldBatchDesc",{ "DocumentId": "2d0c4fef-21c8-4089-8e48-103055902741" })
  5. }
  6. }}
  7. ])

相关问题