您可以通过几乎相同的方式进行分页:设置限制并从大于上一个接收到的列名开始。例如,我在键空间ks1中创建了一个表test1:
CREATE TABLE test1 (
a text,
b text,
PRIMARY KEY (a, b)
)
这里a是我的行键,b是列名。然后,我从a到l插入了12条记录,其中a = a和b。所以
cqlsh:ks1> select * from test1;
a | b
---+---
a | a
a | b
a | c
a | d
a | e
a | f
a | g
a | h
a | i
a | j
a | k
a | l
然后,我使用CQL驱动程序对该Python进行了分页:
import cql
con = cql.connect('localhost', keyspace='ks1', cql_version='3.0.0')
cursor = con.cursor()
last = ""
while last != None:
cursor.execute("select * from test1 where a=:a and b>:b limit 5", {"a": "a", "b": last})
last = None
for row in cursor:
print row
last = row[1]
[u'a', u'a']
[u'a', u'b']
[u'a', u'c']
[u'a', u'd']
[u'a', u'e']
[u'a', u'f']
[u'a', u'g']
[u'a', u'h']
[u'a', u'i']
[u'a', u'j']
[u'a', u'k']
[u'a', u'l']