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.
Utilice una instrucción SELECT para consultar datos.
Sintaxis
select_statement ::= SELECT [ JSON ] ( select_clause | '*' ) FROM table_name [ WHERE 'where_clause' ] [ ORDER BY 'ordering_clause' ] [ LIMIT (integer | bind_marker) ] [ ALLOW FILTERING ] select_clause ::= selector [ AS identifier ] ( ',' selector [ AS identifier ] ) selector ::= column_name | term | CAST '(' selector AS cql_type ')' | function_name '(' [ selector ( ',' selector )* ] ')' where_clause ::= relation ( AND relation )* relation ::= column_name operator term TOKEN operator ::= '=' | '<' | '>' | '<=' | '>=' | IN | CONTAINS | CONTAINS KEY ordering_clause ::= column_name [ ASC | DESC ] ( ',' column_name [ ASC | DESC ] )*
Ejemplos
SELECT name, id, manager_id FROM "myGSGKeyspace".employees_tbl ;
SELECT JSON name, id, manager_id FROM "myGSGKeyspace".employees_tbl ;
Acerca de una tabla que asigne los tipos de datos codificados en JSON a los tipos de datos de Amazon Keyspaces, consulte Codificación JSON de los tipos de datos de Amazon Keyspaces.
Uso de la palabra clave IN
La palabra clave IN
especifica la igualdad de uno o más valores. Se puede aplicar a la clave de partición y a la columna de agrupación. Los resultados se devuelven en el orden en que se presentan las claves en la instrucción SELECT
.
Ejemplos
SELECT * from mykeyspace.mytable
WHERE primary.key1 IN (1,2) and clustering.key1 = 2;
SELECT * from mykeyspace.mytable
WHERE primary.key1 IN (1,2) and clustering.key1 <= 2;
SELECT * from mykeyspace.mytable
WHERE primary.key1 = 1 and clustering.key1 IN (1, 2);
SELECT * from mykeyspace.mytable
WHERE primary.key1 <= 2 and clustering.key1 IN (1, 2) ALLOW FILTERING;
Para obtener más información sobre la palabra clave IN
y la forma en que Amazon Keyspaces procesa la instrucción, consulte Uso del operador IN con la instrucción SELECT en una consulta en Amazon Keyspaces.
Ordenación de los resultados
La cláusula ORDER BY
especifica el orden de clasificación de los resultados devueltos. Toma como argumentos una lista de nombres de columnas junto con el orden de clasificación de cada columna. Solo puede especificar columnas de agrupación en las cláusulas de ordenación. Las columnas no agrupadas no están permitidas. Las opciones de ordenación son ASC
para ordenación ascendente y DESC
para ordenación descendente. Si se omite el orden de clasificación, se utiliza el orden predeterminado de la columna de agrupación. Acerca de los posibles criterios de ordenación, consulte. Ordenación de resultados con ORDER BY en Amazon Keyspaces
Ejemplo
SELECT name, id, division, manager_id FROM "myGSGKeyspace".employees_tbl WHERE id = '012-34-5678' ORDER BY division;
Al utilizar ORDER BY
con la palabra clave IN
, los resultados se ordenan dentro de una página. No se admite la reordenación completa con la paginación deshabilitada.
TOKEN
Puede aplicar la función TOKEN
a la columna PARTITION KEY
en las cláusulas SELECT
y WHERE
. Con la función TOKEN
, Amazon Keyspaces devuelve filas basadas en el valor del token asignado de la PARTITION_KEY
en lugar de en el valor de la PARTITION KEY
.
Las relaciones TOKEN
no se admiten con la palabra clave IN
.
Ejemplos
SELECT TOKEN(id) from
my_table
; SELECT TOKEN(id) frommy_table
WHERE TOKEN(id) > 100 and TOKEN(id) < 10000;
Función TTL
Puede utilizar la función TTL
con la instrucción SELECT
para recuperar el tiempo de caducidad en segundos que se almacena para una columna. Si no se establece ningún valor TTL
, la función devuelve null
.
Ejemplo
SELECT TTL(my_column
) from my_table
;
La función TTL
no se puede utilizar en columnas multicelda, como las colecciones.
WRITETIME función
Puede utilizar la función WRITETIME
con la instrucción SELECT
para recuperar la marca de tiempo que se almacena como metadatos para el valor de una columna solo si la tabla utiliza marcas de tiempo en el lado del cliente. Para obtener más información, consulte Marcas de tiempo del cliente en Amazon Keyspaces.
SELECT WRITETIME(
my_column
) frommy_table
;
La función WRITETIME
no se puede utilizar en columnas multicelda, como las colecciones.
nota
Por compatibilidad con el comportamiento establecido de los controladores Cassandra, las políticas de autorización basadas en etiquetas no se aplican cuando se realizan operaciones en tablas del sistema mediante llamadas a la API de Cassandra Query Language (CQL) a través de los controladores y las herramientas para desarrolladores de Cassandra. Para obtener más información, consulte Acceso a recursos de Amazon Keyspaces basado en etiquetas.