1

我的数据存储包含以下结构

| id                                   | date          | property   |
|:-------------------------------------|--------------:|:---------: |
| 78c94c24-8895-11e7-bb31-be2e44b06b34 | 1503556140000 | 9184675510 |   
| 78c94c24-8895-11e7-bb31-be2e44b06b34 | 1503469740000 | 9184675510 |
| 78c94c24-8895-11e7-bb31-be2e44b06b34 | 1504074540000 | 9184675510 |
| 7bbb1056-8896-11e7-bb31-be2e44b06b34 | 1503556140000 | 9184675510 |
| 836ea8a8-8896-11e7-bb31-be2e44b06b34 | 1498804140000 | 9184675510 |
| 836ea8a8-8896-11e7-bb31-be2e44b06b34 | 1501396140000 | 9184675510 |

我正在尝试从数据存储中过滤关于“属性”的不同 ID,并使用以下 JDO 查询按日期排序

String queryString = SELECT DISTINCT id FROM com.test.pkg.jdo.TestJDO WHERE property == '9184675510' ORDER BY date DESC                      
Query query = persistenceManager
                    .newQuery( queryString );
query.setRange(0,10);
List<String> response = query.execute();

我已将范围设置为 10 以获取 10 个不同的 id,但即使数据存储包含此过滤器的更多记录,查询响应也会返回小于 10 的 id。

考虑到设置的范围,查询是否可能仅扫描 10 条记录并返回不同的 id。有没有其他方法可以使用低级 API 来完成这个查询?

任何想法都会有所帮助。

4

0 回答 0