該查詢是用 JDO 編寫的,我在其中根據用戶所在的國家/地區過濾用戶。聯系人種類有財產國家。僅獲取其國家/地區出現在以下列表中的用戶。List<String> countryList = Arrays.asList("USA","India","France");
SELECT FROM Contacts WHERE :countryList.contains(country) && loginType == 'Google' && dateAdded >= 0 && dateAdded <= 1567078411000 ORDER BY dateAdded DESC RANGE 0,30如何在低級數據存儲中編寫上述查詢的代碼?
1 回答

慕容森
TA貢獻1853條經驗 獲得超18個贊
盡管這不是推薦的解決方案,因為在遷移到較新的 App Engine 運行時之前需要升級到推薦的 API,但您可以使用 Java App Engine API 客戶端執行此類“WHERE IN”查詢。就像下面的例子一樣:
List<String> countryList = Arrays.asList("USA","India","France");
Filter propertyFilter =
? ? ? ? new FilterPredicate("height", FilterOperator.IN, countryList);
Query q = new Query("Contacts").setFilter(propertyFilter);
然而,新的Java 數據存儲客戶端庫不支持這一點,我相信這是因為,在幕后,數據存儲將此查詢轉換為列表中每個元素的單獨查詢。
添加回答
舉報
0/150
提交
取消