欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

cassandra cql order by实验

程序员文章站 2022-06-09 09:16:11
...

cassandra cql order by实验 1CREATE TABLE simplex.playlists (2 id uuid,3 title text,4 num int,5 album text,6 artist text,7 song_id uuid,8 PRIMARY KEY (id,title,num)9 );1SELECT * FROM simplex.playlists where id=2cc9ccb7-6221-4ccb-8387-f22b6a

cassandra cql order by实验

1
CREATE TABLE simplex.playlists (
2
    id uuid,
3
    title text,
4
    num int,
5
    album text,
6
    artist text,
7
    song_id uuid,
8
    PRIMARY KEY (id,title,num)
9
    );
1
SELECT * FROM simplex.playlists where id=2cc9ccb7-6221-4ccb-8387-f22b6a1b354d ORDER BY title DESC;
1
搜索成功
1
SELECT * FROM simplex.playlists where id=2cc9ccb7-6221-4ccb-8387-f22b6a1b354d ORDER BY num DESC;
1
搜索异常Order by currently only support the ordering of columns following their declared order in the PRIMARY KEY
1
SELECT * FROM simplex.playlists ORDER BY title DESC;
1
异常:ORDER BY is only supported when the partition key is restricted by an EQ or an IN.
1
SELECT * FROM simplex.playlists where num=1 ORDER BY title DESC;
1
异常:PRIMARY KEY part num cannot be restricted (preceding part title is either not restricted or by a non-EQ relation
1
SELECT * FROM simplex.playlists where title='La Petite Tonkinoise' ORDER BY title DESC;
1
异常:ORDER BY is only supported when the partition key is restricted by an EQ or an IN.
1
SELECT * FROM simplex.playlists where id=2cc9ccb7-6221-4ccb-8387-f22b6a1b354d ORDER BY id DESC;
1
异常:Order by is currently only supported on the clustered columns of the PRIMARY KEY, got id
1
SELECT * FROM simplex.playlists where title='La Petite Tonkinoise' ORDER BY num DESC;
1
异常:ORDER BY is only supported when the partition key is restricted by an EQ or an IN.
1
通过以上实验可以得出cassandra cql order by 字段必须是复合主键的第二个字段,并且需要where后跟上第一个字段的条件判断。
1
另外:CLUSTERING ORDER
01

02

03
   
04
   
05
   
06
   
07
  
08
   
09
  
10
   
11
  
    12
  • 官方说明
  • 13
  • if the table has been defined without any specific CLUSTERING ORDER, then then allowed orderings are the order induced by the clustering key and the reverse of that one.
  • 14
  • otherwise, the orderings allowed are the order of the CLUSTERING ORDER option and the reversed one.
  • 15
16

用法是 :WITH CLUSTERING ORDER BY( title DESC) 跟在建表语句后面。目的是改变数据存储排序方式