View a markdown version of this page

SELECT - Amazon Keyspaces (für Apache Cassandra)

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

SELECT

Verwenden Sie eine SELECT-Anweisung, um Daten abzufragen.

Syntax

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

Beispiele

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

Eine Tabelle, die JSON-encoded Datentypen Amazon Keyspaces-Datentypen zuordnet, finden Sie unterJSON-Codierung der Amazon Keyspaces-Datentypen.

Verwenden des Schlüsselworts IN

Das IN Schlüsselwort gibt die Gleichheit für einen oder mehrere Werte an. Es kann auf den Partitionsschlüssel und die Clustering-Spalte angewendet werden. Die Ergebnisse werden in der Reihenfolge zurückgegeben, in der die Schlüssel in der SELECT Anweisung aufgeführt sind.

Beispiele

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;

Weitere Informationen zum IN Schlüsselwort und zur Verarbeitung der Anweisung durch Amazon Keyspaces finden Sie unterVerwenden Sie den IN-Operator mit der SELECT-Anweisung in einer Abfrage in Amazon Keyspaces.

Ergebnisse bestellen

Die ORDER BY Klausel gibt die Sortierreihenfolge der zurückgegebenen Ergebnisse an. Sie verwendet als Argumente eine Liste von Spaltennamen zusammen mit der Sortierreihenfolge für jede Spalte. Sie können Cluster-Spalten nur in Ordnungsklauseln angeben. Non-clusteringSpalten sind nicht zulässig. Die Sortierreihenoptionen gelten ASC für die aufsteigende und DESC für die absteigende Sortierreihenfolge. Wenn die Sortierreihenfolge weggelassen wird, wird die Standardreihenfolge der Clusterspalte verwendet. Mögliche Sortierreihenfolgen finden Sie unterErgebnisse mit ORDER BY in Amazon Keyspaces bestellen.

Beispiel

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

Bei Verwendung ORDER BY mit dem IN Schlüsselwort werden die Ergebnisse innerhalb einer Seite sortiert. Eine vollständige Neuanordnung mit deaktivierter Paginierung wird nicht unterstützt.

TOKEN

Sie können die TOKEN Funktion auf die PARTITION KEY Spalte in SELECT und WHERE -Klauseln anwenden. Mit der TOKEN Funktion gibt Amazon Keyspaces Zeilen zurück, die auf dem zugewiesenen Token-Wert von und PARTITION_KEY nicht auf dem Wert von basieren. PARTITION KEY

TOKENBeziehungen werden mit dem Schlüsselwort nicht unterstützt. IN

Beispiele

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

TTL-Funktion

Sie können die TTL Funktion zusammen mit der SELECT Anweisung verwenden, um die für eine Spalte gespeicherte Ablaufzeit in Sekunden abzurufen. Wenn kein TTL Wert festgelegt ist, kehrt die Funktion zurücknull.

Beispiel

SELECT TTL(my_column) from my_table;

Die TTL Funktion kann nicht für mehrzellige Spalten wie Sammlungen verwendet werden.

WRITETIMEFunktion

Sie können die WRITETIME Funktion mit der SELECT Anweisung nur verwenden, um den Zeitstempel abzurufen, der als Metadaten für den Wert einer Spalte gespeichert ist, wenn die Tabelle clientseitige Zeitstempel verwendet. Weitere Informationen finden Sie unter Client-side Zeitstempel in Amazon Keyspaces.

SELECT WRITETIME(my_column) from my_table;

Die WRITETIME Funktion kann nicht für mehrzellige Spalten wie Sammlungen verwendet werden.

Anmerkung

Aus Gründen der Kompatibilität mit dem etablierten Verhalten von Cassandra-Treibern werden tagbasierte Autorisierungsrichtlinien nicht durchgesetzt, wenn Sie Operationen an Systemtabellen mithilfe von Cassandra Query Language (CQL) API-Aufrufen über Cassandra-Treiber und Entwicklertools ausführen. Weitere Informationen finden Sie unter Amazon Keyspaces-Ressourcenzugriff basierend auf Tags.