ORDER BY在 Amazon Keyspaces 中使用订购结果 - Amazon Keyspaces(Apache Cassandra 兼容)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

ORDER BY在 Amazon Keyspaces 中使用订购结果

ORDER BY 子句指定 SELECT 语句中返回的结果的排序顺序。此语句将一系列列名称作为参数,您可以为每个列指定数据的排序顺序。您只能在排序子句中指定聚类列,不能指定非聚类列。

可用于返回的结果的两个排序顺序选项是 ASC(用于升序排序顺序)和 DESC(用于降序排序顺序)。

SELECT * FROM my_keyspace.my_table ORDER BY (col1 ASC, col2 DESC, col3 ASC); col1 | col2 | col3 ------+------+------ 0 | 6 | a 1 | 5 | b 2 | 4 | c 3 | 3 | d 4 | 2 | e 5 | 1 | f 6 | 0 | g
SELECT * FROM my_keyspace.my_table ORDER BY (col1 DESC, col2 ASC, col3 DESC); col1 | col2 | col3 ------+------+------ 6 | 0 | g 5 | 1 | f 4 | 2 | e 3 | 3 | d 2 | 4 | c 1 | 5 | b 0 | 6 | a

如果您未在查询语句中指定排序顺序,则使用聚类列的默认排序顺序。

您可以在排序子句中使用的可能排序顺序取决于创建表时为每个聚类列分配的排序顺序。查询结果只能按照创建表时为所有聚类列定义的顺序或与定义的排序顺序相反的顺序进行排序。不允许使用其他可能的组合。

例如,如果表CLUSTERING ORDER是 (col1、col2 ASC DESC、col3ASC),则的有效参数ORDER BY是 (col1、col2、col3ASC) 或 (col1 ASC DESC、col2、col DESC 3)。ASC DESC有关 CLUSTERING ORDER 的更多信息,请参阅 CREATE TABLE 下的 table_options