gpt4 book ai didi

javascript - MongoDB $和查询

转载 作者:行者123 更新时间:2023-12-04 10:18:29 26 4
gpt4 key购买 nike

我想在 MongoDB 中执行以下查询:

  • 返回的文档 profession.organization属性可以是字符串“bank”。
  • 返回的文档 profession.city属性可以是字符串“NY”。
  • 但是,当文档的“profession.organization”为“bank”,“profession.city”为“NY”时,必须排除该文档。

  • 总而言之,一个文件可以有城市“NY”或组织“银行”,但如果它同时具有这些属性,则必须排除在外。

    到目前为止我尝试过的。
        targetObj = await db.db(MDBC.db).collection(MDBC.pC)
    .aggregate([{
    $match: {
    $and: [
    { 'profession.organization': { $ne: 'bank' } },
    { 'profession.city': { $ne: 'NY' } }
    ]
    }
    }, { $sample: { size: 1 } }]).next();

    最佳答案

    试试这个:

    targetObj = await db.db(MDBC.db).collection(MDBC.pC)
    .aggregate([
    {
    $match: {
    $and: [
    {
    $or: [
    { "profession.organization": "bank" },
    { "profession.city": "NY" }
    ]
    },
    {
    $or: [
    {
    "profession.organization": "bank",
    "profession.city": { $ne: "NY" }
    },
    {
    "profession.organization": { $ne: "bank" },
    "profession.city": "NY"
    }
    ]
    }
    ]
    }
    },
    { $sample: {size: 1} } ]).next();

    MongoPlayground

    关于javascript - MongoDB $和查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60970923/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com