View a markdown version of this page

SELECT - Amazon Keyspaces (per Apache Cassandra)

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

SELECT

Usa un'istruzione SELECT per interrogare i dati.

Sintassi

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 ] )*

Esempi

SELECT name, id, manager_id FROM "myGSGKeyspace".employees_tbl ; SELECT JSON name, id, manager_id FROM "myGSGKeyspace".employees_tbl ;

Per una tabella che associa JSON-encoded i tipi di dati ai tipi di dati di Amazon Keyspaces, consultaCodifica JSON dei tipi di dati Amazon Keyspaces.

Utilizzo della parola chiave IN

La IN parola chiave specifica l'uguaglianza per uno o più valori. Può essere applicata alla chiave di partizione e alla colonna di clustering. I risultati vengono restituiti nell'ordine in cui le chiavi sono presentate nell'SELECTistruzione.

Esempi

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;

Per ulteriori informazioni sulla IN parola chiave e su come Amazon Keyspaces elabora l'istruzione, consultaUsa l'operatore IN con l'istruzione SELECT in una query in Amazon Keyspaces.

Risultati degli ordini

La ORDER BY clausola specifica l'ordinamento dei risultati restituiti. Accetta come argomenti un elenco di nomi di colonne insieme al criterio di ordinamento per ciascuna colonna. È possibile specificare il clustering delle colonne solo nelle clausole di ordinamento. Non-clusteringle colonne non sono consentite. Le opzioni di ordinamento sono ASC per l'ordinamento crescente e DESC per quello decrescente. Se l'ordinamento viene omesso, viene utilizzato l'ordine predefinito della colonna di clustering. Per i possibili ordinamenti, vedere. Ordina i risultati con ORDER BY in Amazon Keyspaces

Esempio

SELECT name, id, division, manager_id FROM "myGSGKeyspace".employees_tbl WHERE id = '012-34-5678' ORDER BY division;

Se si utilizza ORDER BY con la IN parola chiave, i risultati vengono ordinati all'interno di una pagina. Il riordino completo con l'impaginazione disattivata non è supportato.

TOKEN

È possibile applicare la TOKEN funzione alla PARTITION KEY colonna SELECT e alle WHERE clausole. Con la TOKEN funzione, Amazon Keyspaces restituisce le righe in base al valore del token mappato di e PARTITION_KEY non al valore di. PARTITION KEY

TOKENle relazioni non sono supportate con la parola chiave. IN

Esempi

SELECT TOKEN(id) from my_table; SELECT TOKEN(id) from my_table WHERE TOKEN(id) > 100 and TOKEN(id) < 10000;

funzione TTL

È possibile utilizzare la TTL funzione con l'SELECTistruzione per recuperare l'ora di scadenza in secondi memorizzata per una colonna. Se non è impostato alcun TTL valore, la funzione ritornanull.

Esempio

SELECT TTL(my_column) from my_table;

La TTL funzione non può essere utilizzata su colonne a più celle come le raccolte.

Funzione WRITETIME

È possibile utilizzare la WRITETIME funzione con l'SELECTistruzione per recuperare il timestamp archiviato come metadati per il valore di una colonna solo se la tabella utilizza timestamp sul lato client. Per ulteriori informazioni, consulta Client-side timestamp in Amazon Keyspaces.

SELECT WRITETIME(my_column) from my_table;

La WRITETIME funzione non può essere utilizzata su colonne a più celle come le raccolte.

Nota

Per motivi di compatibilità con il comportamento consolidato dei driver Cassandra, le politiche di autorizzazione basate su tag non vengono applicate quando si eseguono operazioni sulle tabelle di sistema utilizzando chiamate API Cassandra Query Language (CQL) tramite i driver Cassandra e gli strumenti per sviluppatori. Per ulteriori informazioni, consulta Accesso alle risorse Amazon Keyspaces basato su tag.