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

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

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

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

8cdiaqws1#

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

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

bhmjp9jg2#

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

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

相关问题