1***@qq.com
1***@qq.com
  • 发布:2023-12-27 17:34
  • 更新:2023-12-29 20:41
  • 阅读:254

【报Bug】db.command.or返回结果错误

分类:uniCloud

产品分类: uniCloud/支付宝小程序云

操作步骤:

先单独查or的两个条件,都能得到1条结果,然后带上or一起查就不行了

预期结果:

返回1条数据

实际结果:

返回为空

bug描述:

数据库有如下记录

{  
        "_id": "658bcaaac19207d9e2d641e3",  
        "applyinfo": {  
            "candidates_info": {  
                "480": {  
                    "name": "2",  
                    "time": "2023-12-27 16:38:42",  
                    "uid": "480"  
                },  
                "__arraytype": 0  
            },  
            "candidates_uid": {  
                "480": true,  
                "__arraytype": 0  
            }  
        },  
        "realinfo": {  
            "signin_uidarr": ["480"],  
        },  
    },

执行以下查询时为空,但应该有一条

var c = db.command  
var queryWhere = c.or([  
    {  
      applyinfo: {  
        candidates_uid: {  
          "480": c.and([c.exists(true), c.eq(true)])  
        }  
      },  
    },  
    {  
      realinfo: {  
        signin_uidarr: c.all(["480"])  
      }  
    }  
  ])  
db.collection("activity")  
  .where(queryWhere).get()

不用command.or()分别执行查询时均正常,另外如图这个描述也错了,直接复制and的没改吗?

queryWhere = {  
    applyinfo: {  
      candidates_uid: {  
        "480": c.and([c.exists(true), c.eq(true)])  
      }  
    }
queryWhere = {  
      realinfo: {  
        signin_uidarr: c.all(["480"])  
      }  
    }
2023-12-27 17:34 负责人:DCloud_uniCloud_CRL 分享
已邀请:
1***@qq.com

1***@qq.com (作者)

顶。。。

DCloud_uniCloud_CRL

DCloud_uniCloud_CRL

问题已确认,下个版本修复。

要回复问题请先登录注册