2017-05-29 107 views
0

我想查詢我的本地表來獲取特定的數據集,我不斷收到語法錯誤。什麼是使用where子句的正確方法。我在看這個資源:Azure移動應用程序客戶端查詢離線數據

https://azure.github.io/azure-mobile-apps-js-client/MobileServiceSqliteStore.html#read

我不能把我的代碼的功能。我能夠以簡單的閱讀方式獲得表格全套數據。

this.azureStore = new WindowsAzure.MobileServiceSqliteStore('db_offline'); 

var queryString = "EventId eq " + 
     eventId + " and Start gt datetime('" + 
     moment.utc(dayDate).startOf('day').format('YYYY-MM-DDTHH:mm:00') + "Z') and Start lt datetime('" + 
     moment.utc(dayDate).endOf('day').format('YYYY-MM-DDTHH:mm:00') + "Z')"; 
     this.azureStore.read(new WindowsAzure.Query('Timeslots').where(queryString)); 

回答

1

你需要格式化日期值,如下所示:

Start gt datetime'2017-05-30T09:13:28.000Z' 

然後代碼會是這個樣子:

this.azureStore = new WindowsAzure.MobileServiceSqliteStore('db_offline'); 

var queryString = "EventId eq " 
     + eventId + " and Start gt datetime'" 
     + moment.utc(dayDate).startOf('day').format('YYYY-MM-DDTHH:mm:ss:000') 
     + "Z' and Start lt datetime'" 
     + moment.utc(dayDate).endOf('day').format('YYYY-MM-DDTHH:mm:ss:000') + "Z'"; 
     this.azureStore.read(new WindowsAzure.Query('Timeslots').where(queryString)); 
相關問題