Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在cassandra中创建有序表(高分)_Cassandra_Cql - Fatal编程技术网

在cassandra中创建有序表(高分)

在cassandra中创建有序表(高分),cassandra,cql,Cassandra,Cql,我正在尝试创建一个包含高分的表。 当前该表如下所示: CREATE TABLE speedruns ( level text, user text, time int, PRIMARY KEY(level, user) ); CREATE TABLE speedruns ( level text, user text, score int, time int, PRIMARY KEY(level, score, user) ) WITH CLUS

我正在尝试创建一个包含高分的表。 当前该表如下所示:

CREATE TABLE speedruns (
  level text, 
  user text, 
  time int, 
  PRIMARY KEY(level, user)
);
CREATE TABLE speedruns (
  level text, 
  user text, 
  score int,
  time int, 
  PRIMARY KEY(level, score, user)
) WITH CLUSTERING ORDER BY (score DESC);
我希望能够列出前10名的速度跑,按时间递增10次,并限制10次。
如果我理解正确,如果是主键,您只能按列排序?实现具有此结构并允许我执行此类操作的表的正确方法是什么?

您可以按群集列排序,这样您就可以得到如下结果:

CREATE TABLE speedruns (
  level text, 
  user text, 
  time int, 
  PRIMARY KEY(level, user)
);
CREATE TABLE speedruns (
  level text, 
  user text, 
  score int,
  time int, 
  PRIMARY KEY(level, score, user)
) WITH CLUSTERING ORDER BY (score DESC);