收藏
回答

为什么使用云开发控制台数据库模板查询结果和云函数调用API查询结果不一致?

各位好:

在开发过程中 使用控制台数据库模板查询结果和云函数调用API查询的结果不一致?

模板查询代码如下,会返回3条符合条件的数据

db.collection('v6MasterList')
.where({
orderState: _.gte(0),
workType: _.elemMatch({
typeLevel: _.and([_.lte(7), _.gte(7)]),
typeIndex: _.in([0,1,2])
}),
}).field({
workType: true,
idName: true,
})
.get()



云函数代码如下,结果是0条数据

  console.log('v14231234');
    let temResult = await db.collection('v6MasterList')
    .where({
      orderState: _.gte(0),
      workType: _.elemMatch({
        typeLevel: _.and([_.lte(7), _.gte(7)]),
        typeIndex: _.in([0,1,2])
      }),
    }).field({
      workTypetrue,
      idNametrue,
    })
    .get()
    console.log('查询的结果是的', temResult);


两边的代码 我贴过去执行也是不同的结果

同一个数据库内相同环境

求解



回答关注问题邀请回答
收藏

3 个回答

  • 老张
    老张
    2022-02-15

    1、查询条件一点点增加来调试。

    2022-02-15
    有用
    回复
  • 15
    15
    2022-02-15

    数据库权限设置对了吗

    2022-02-15
    有用
    回复 1
    • McWhy
      McWhy
      2022-02-15
      右边是 云函数 执行的啊  云函数可以突破权限的啊
      2022-02-15
      回复
  • McWhy
    McWhy
    2022-02-15

    使用控制台模板查询到的部分数据格式如下,(删除了部分涉及隐私的不相关字段)

    [

      {

        "_id": "og1b45",

        "idName": "张三",

        "workType": [

          {

            "typeIndex": 0,

            "typeLevel": 7,

          },

          {

            "typeIndex": 1,

            "typeLevel": 7,

          },

          {

            "typeIndex": 2,

            "typeLevel": 6,

          }

        ]

      },

      {

        "_id": "og1b45",

        "idName": "李四",

        "workType": [

          {

            "typeIndex": 2,

            "typeLevel": 7,

          }

        ]

      },

      {

        "_id": "og1b",

        "idName": "王五",

        "workType": [

          {

            "typeIndex": 0,

            "typeLevel": 4,

          },

          {

            "typeIndex": 1,

            "typeLevel": 1,

          },

          {

            "typeIndex": 2,

            "typeLevel": 7,

          }

        ]

      }

    ]

    2022-02-15
    有用
    回复
登录 后发表内容