cassandra2.0 如何实现分页查询
本文用到的cassandra的版本是2.0.6版 1、前提和约束 create table test(a int,b int,c int, d string,e string,primary key(a,b,c)); create index on test(d); cassandra的查询具有以下约束: 第一主键 只能用=号查询 第二主键 支持= > < >= <= 但是必须后面加 ALLOW FILTERING 索引列 只支持=号 2、分页查询 首先使用limit 关键字来限制查询结果的条数 进行分页。 进行翻页是个比较复杂的过程。 需要明确查询出来的结果是按token(a) 来排序的,其次是按(b,c)来排序的。 假设无任何查询条件的查询,第一次查询语句是 select * from test limit 10; 出来的第10条记录的主键需要记录下来,假设为 a10 b10 c10 那么进行第二次查询的时候,语句应该这样写: select * from test where token(a)=token(a10) and (b,c)>(b10,c10) limit 10; 假设查出来只有6条, 那么需要继续查出来4条,语句应该这样写: select * from test where token(a)>token(a10) limit 4; 如果后面扔有数据,第20条记录的主键也要记录下来,假设为 a20 b20 c20 ...