Azure NodeJS后端获取最后一个实体

时间:2016-05-03 11:42:28

标签: node.js azure-mobile-services

我需要使用调度程序脚本获取Azure Mobile Services上的最后一项表。

这是我的sctipt,用于执行此操作:

tlmtTable
    .orderByDescending('id')                        
    .where({deviceId: deviceId})                        
    .take(1)                        
    .read({ 
        success: function(results) {
                        console.warn(results);                                            
                    }
           }); 

我不知道哪里出错,但它不会返回任何内容。每当我使用它而不进行排序时,我会看到日志上的行。此版本的脚本返回行,但不是最后一行:

tlmtTable   
    .where({deviceId: deviceId})                        
    .take(1)                        
    .read({ 
        success: function(results) {
                        console.warn(results);                                            
                    }
           }); 

我试图将“.orderByDescending”移动到其他查询位置 - 它没有帮助。我无法意识到我可以对结果进行排序并获得最后一条记录。也许你可以帮助我。谢谢!

1 个答案:

答案 0 :(得分:1)

您使用的是字符串还是整数ID?默认情况下,ID是字符串,如果未指定,则会自动分配GUID。生成的GUID不会按您期望的方式排序。更好的解决方案是使用__createdAt列进行排序而不是id。