Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
La cláusula ORDER BY
especifica el orden de clasificación de los resultados devueltos en una instrucción SELECT
. La instrucción toma una lista de nombres de columnas como argumentos y para cada columna puede especificar el orden de clasificación de los datos. Solo puede especificar columnas de agrupación en las cláusulas de ordenación, las columnas de no agrupación no están permitidas.
Las dos opciones de ordenación disponibles para los resultados devueltos son ASC
para ordenación ascendente y DESC
para ordenación descendente.
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
Si no especifica el orden de clasificación en la instrucción de consulta, se utiliza el orden predeterminado de la columna de agrupación.
Los posibles órdenes de clasificación que puede utilizar en una cláusula de ordenación dependen del orden de clasificación asignado a cada columna de agrupación en la creación de la tabla. Los resultados de la consulta solo pueden ordenarse en el orden definido para todas las columnas de agrupación en la creación de la tabla o a la inversa del orden de ordenación definido. No se permiten otras combinaciones posibles.
Por ejemplo, si el CLUSTERING ORDER
de la tabla es (col1 ASC, col2 DESC, col3 ASC), los parámetros válidos para ORDER BY
son (col1 ASC, col2 DESC, col3 ASC) o (col1 DESC, col2 ASC, col3 DESC). Para obtener más información sobre CLUSTERING ORDER
, consulte table_options
en CREATE TABLE.