javascript - 查询搜索两次返回相同的结果

标签 javascript cordova azure azure-mobile-services

我最近了解到 Azure 移动服务将其查询搜索限制为 50 个(如果更改默认值则为 1000 个),但我的应用程序需要能够访问无限的记录。我创建此服务是为了返回包含所有记录的列表。我将跳过计数设置为 1,因为我想在执行 50 这样的跳过计数之前确保它在小范围内工作。调试此代码后,它不断返回两条相同的记录,其中一条不同。我的数据库中有三个完全不同的记录,所以我很困惑为什么它会两次选取其中一个记录。我确保发出请求时跳过量为 0、1、2。

 return new Promise(function(resolve, reject) {



  var x = 0
  var total = 1;

  list = [];
  console.log(list.length);

  while(x <= 3){
      x++;

    var query = table.where(where).includeTotalCount().skip(skipAmount).take(1).read().done(function (results) {

      total = results.totalCount;

      if(results[0] != undefined)
      {

        for (var i = results.length - 1; i >= 0; i--) {
          list.push(results[i]);
          console.log(results[i]);
        }



      }
      else
      {

        resolve(list);
      }




    }, function (err) {
      reject(err);

    });

    skipAmount++;
  }

});
  }

}

最佳答案

您可能需要使用 .orderBy().orderByDescending() 查询方法来确保返回排序后的数据。

table
    .where(where)  
    .orderBy('updatedAt')
    .includeTotalCount()
    .skip(skipAmount)
    .take(1)
    .read() 
    .then(success, failure);

关于javascript - 查询搜索两次返回相同的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46386251/

相关文章:

Cordova 设备和应用程序事件

azure - Azure 队列性能突然下降

asp.net - 如何在本地测试 Azure Active Directory(回复 URL)

Javascript:由另一个变量的值组成的新变量名称

javascript - 寻路 javascript 算法无法正常工作

javascript - Hashids PHP 和 JS 兼容性

javascript - jQuery UI 菜单在 PrestaShop 后台无法工作

Android 无法在全新安装时检索地理位置

javascript - AngularJS 的移动架构选项

sql - Sql Azure 数据库中区分大小写的列名称