什麼你要找的是表/查詢對象的includeTotalCount
方法(遺憾的是它是一個從文檔丟失,我將提交錯誤的產品團隊有它固定的)。
當您在查詢對象上調用read
時,它將默認返回50個(IIRC,數字可能不相同)元素,以防止天真的調用返回非常大的表中的所有元素(從而導致預留服務的出站帶寬成本,或免費配額的配額)。因此,獲取表格中的所有元素,並獲得結果的長度可能不準確。
如果你想要的是表中元素的數量,你可以使用下面的代碼:返回零元素和總數。
var table = client.getTable('tableName');
table.take(0).includeTotalCount().read().then(function (results) {
var count = results.totalCount;
new Windows.UI.Popups.MessageDialog('Total count: ' + count).showAsync();
});
如果您想查詢一些元素,並且還包括總計數(即尋呼),只需添加相應take()
和skip()
電話,也是includeTotalCount
爲好。
謝謝carlosfigueira!它工作:)。有沒有辦法在azure方面執行這個過程,並將行計數結果單獨返回給客戶端應用程序? – 2013-03-25 15:20:55
如果提供一個簡單的'Query'方法'.count()'就可以了。 .getTable('tableName')。count()'而不是'read()'得到標量結果; – SliverNinja 2013-03-25 16:17:30
好主意,會向產品團隊提出建議。 – carlosfigueira 2013-03-25 18:37:20