2014-09-04 19 views
1

在我的activepivot解決方案中,我有一個包含桌面和每筆交易貨幣的商店。如何在activepivot的數據存儲中加速一系列類似的查詢?

例如:

  • 1,歐元,德斯卡,10
  • 2,歐元,DeskB,18
  • 3,英鎊,德斯卡,17
  • 4,美元,德斯卡,54

我有很多查詢,我想查找所有記錄 包含deskA和一個特定但不斷變化的貨幣。

要執行這三個疑問:

  • 德斯卡,歐元
  • 德斯卡,美元
  • 德斯卡,英鎊

我會用事先準備好的聲明,以避免解析查詢多次。 在activepivot中是否有任何等價物?

回答

0

這是如何定義的預編譯查詢

IRecordQuery query = new RecordQuery("storeName", Equal("attributeUsedForSearchHere").parametrized(0), Arrays.asList("attribute2", "attribute3", "attribute4")); 
compiledQuery = datastore.getQueryManager().compile(query); 

這基本上是上面使用attributeUsedForSearchHere因爲你會根據使用搜索的屬性,你如何執行它

ICursor cursor = datastore.getQueryManager().execute(compiledQuery , new Object[] { valueOfAttributeUsedForSearchHere}); 

在同等條件下;當然你可能有幾個屬性。

那麼一旦查詢被執行就可以讀取其他屬性(attribute2,3和4)喜歡如下:

cursor.getRecord().read("attribute2") 
相關問題