2

我的列族将数据存储在列名中,我想使用 Astyanax 对列执行范围查询。谁能建议如何做到这一点?

4

3 回答 3

1

我同意 abhi,这正是 Playorm 实现它的方式。您可以在https://github.com/deanhiller/playorm/blob/master/src/main/java/com/alvazan/orm/layer9z/spi/db/cassandra/Cas ​​sandraSession.java 看到 columnSlice() API 的代码

此外,如果你使用 Playorm for Cassandra,你可以只使用它的 ColumnSlice API。该示例在https://github.com/deanhiller/playorm/blob/master/src/test/java/com/alvazan/test/TestColumnSlice.java给出

于 2013-04-03T06:38:04.927 回答
1

这里有很多关于范围查询的示例

样品一

keyspace.prepareQuery(CF_TIME_UUID)
    .getKey(rowKey)
    .withColumnRange(
        new RangeBuilder()
            .setLimit(10)
            .setStart(TimeUUIDUtils.getTimeUUID(0))
            .setEnd(TimeUUIDUtils
                .getTimeUUID(Long.MAX_VALUE >> 8))
            .build()).execute();
于 2013-04-03T05:13:37.990 回答
0

实际上,如果您的最终目标是取出实体,您也可以使用 PlayOrm 查询语言。

于 2013-04-03T12:27:19.657 回答