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.
Tutorial: Lesen Sie Daten aus einer Tabelle mithilfe der Anweisung SELECT
In Tutorial: Daten in eine Amazon Keyspaces-Tabelle einfügen und laden diesem Abschnitt haben Sie anhand der SELECT
Anweisung überprüft, ob Sie Ihrer Tabelle erfolgreich Daten hinzugefügt haben. In diesem Abschnitt verfeinern Sie Ihre Verwendung von, SELECT
um bestimmte Spalten und nur Zeilen anzuzeigen, die bestimmte Kriterien erfüllen.
Die allgemeine Form der SELECT
Aussage lautet wie folgt.
SELECT column_list
FROM table_name
[WHERE condition
[ALLOW FILTERING]] ;
Themen
Wählen Sie alle Daten in Ihrer Tabelle aus
Die einfachste Form der SELECT
Anweisung gibt alle Daten in Ihrer Tabelle zurück.
Wichtig
In einer Produktionsumgebung ist es in der Regel nicht empfehlenswert, diesen Befehl auszuführen, der alle Daten in Ihrer Tabelle zurückgibt.
Um alle Daten Ihrer Tabelle auszuwählen
-
Öffnen Sie Amazon Keyspaces AWS CloudShell und stellen Sie mithilfe des folgenden Befehls eine Verbindung zu Amazon Keyspaces her. Achten Sie darauf,
us-east-1
mit Ihrer eigenen Region zu aktualisieren.cqlsh-expansion cassandra.
us-east-1
.amazonaws.com 9142 --ssl -
Führen Sie die folgende Abfrage aus.
SELECT * FROM catalog.book_awards ;
Wenn Sie das Platzhalterzeichen (
*
) für verwenden, werden alle Spalten ausgewählt.column_list
Die Ausgabe der Anweisung sieht wie das folgende Beispiel aus.year | award | category | rank | author | book_title | publisher ------+------------------+-------------+------+--------------------+-----------------------+--------------- 2020 | Wolf | Non-Fiction | 1 | Wang Xiulan | History of Ideas | AnyPublisher 2020 | Wolf | Non-Fiction | 2 | Ana Carolina Silva | Science Today | SomePublisher 2020 | Wolf | Non-Fiction | 3 | Shirley Rodriguez | The Future of Sea Ice | AnyPublisher 2020 | Kwesi Manu Prize | Fiction | 1 | Akua Mansa | Where did you go? | SomePublisher 2020 | Kwesi Manu Prize | Fiction | 2 | John Stiles | Yesterday | Example Books 2020 | Kwesi Manu Prize | Fiction | 3 | Nikki Wolf | Moving to the Chateau | AnyPublisher 2020 | Richard Roe | Fiction | 1 | Alejandro Rosalez | Long Summer | SomePublisher 2020 | Richard Roe | Fiction | 2 | Arnav Desai | The Key | Example Books 2020 | Richard Roe | Fiction | 3 | Mateo Jackson | Inside the Whale | AnyPublisher
Wählen Sie eine Teilmenge von Spalten
Um eine Teilmenge von Spalten abzufragen
-
Öffnen Sie Amazon Keyspaces AWS CloudShell und stellen Sie mithilfe des folgenden Befehls eine Verbindung zu Amazon Keyspaces her. Achten Sie darauf,
us-east-1
mit Ihrer eigenen Region zu aktualisieren.cqlsh-expansion cassandra.
us-east-1
.amazonaws.com 9142 --ssl -
Führen Sie die folgende Abfrage aus
award
category
, um nur dieyear
Spalten, und abzurufen.SELECT award, category, year FROM catalog.book_awards ;
Die Ausgabe enthält nur die angegebenen Spalten in der Reihenfolge, die in der
SELECT
Anweisung aufgeführt ist.award | category | year ------------------+-------------+------ Wolf | Non-Fiction | 2020 Wolf | Non-Fiction | 2020 Wolf | Non-Fiction | 2020 Kwesi Manu Prize | Fiction | 2020 Kwesi Manu Prize | Fiction | 2020 Kwesi Manu Prize | Fiction | 2020 Richard Roe | Fiction | 2020 Richard Roe | Fiction | 2020 Richard Roe | Fiction | 2020
Wählen Sie eine Teilmenge von Zeilen aus
Wenn Sie einen großen Datensatz abfragen, möchten Sie möglicherweise nur Datensätze, die bestimmte Kriterien erfüllen. Zu diesem Zweck können Sie eine WHERE
Klausel an das Ende unserer SELECT
Anweisung anhängen.
Um eine Teilmenge von Zeilen abzufragen
-
Öffnen Sie Amazon Keyspaces AWS CloudShell und stellen Sie mithilfe des folgenden Befehls eine Verbindung zu Amazon Keyspaces her. Achten Sie darauf,
us-east-1
mit Ihrer eigenen Region zu aktualisieren.cqlsh-expansion cassandra.
us-east-1
.amazonaws.com 9142 --ssl -
Führen Sie die folgende Abfrage aus, um nur die Datensätze für die Auszeichnungen eines bestimmten Jahres abzurufen.
SELECT * FROM catalog.book_awards WHERE year=2020 AND award='Wolf' ;
Die vorherige
SELECT
Anweisung gibt die folgende Ausgabe zurück.year | award | category | rank | author | book_title | publisher ------+-------+-------------+------+--------------------+-----------------------+--------------- 2020 | Wolf | Non-Fiction | 1 | Wang Xiulan | History of Ideas | AnyPublisher 2020 | Wolf | Non-Fiction | 2 | Ana Carolina Silva | Science Today | SomePublisher 2020 | Wolf | Non-Fiction | 3 | Shirley Rodriguez | The Future of Sea Ice | AnyPublisher
Die WHERE
Klausel verstehen
Die WHERE
Klausel wird verwendet, um die Daten zu filtern und nur die Daten zurückzugeben, die die angegebenen Kriterien erfüllen. Bei den angegebenen Kriterien kann es sich um eine einfache oder eine zusammengesetzte Bedingung handeln.
Wie verwendet man Bedingungen in einer WHERE
Klausel
-
Eine einfache Bedingung — Eine einzelne Spalte.
WHERE column_name=value
Sie können eine einfache Bedingung in einer
WHERE
Klausel verwenden, wenn eine der folgenden Bedingungen erfüllt ist:-
Die Spalte ist die einzige Spalte im Primärschlüssel der Tabelle.
-
Sie fügen
ALLOW FILTERING
nach der Bedingung in derWHERE
Klausel hinzu.Beachten Sie, dass die Verwendung zu einer inkonsistenten Leistung führen
ALLOW FILTERING
kann, insbesondere bei großen und mehrfach partitionierten Tabellen.
-
-
Eine zusammengesetzte Bedingung — Mehrere einfache Bedingungen, die miteinander verbunden sind.
AND
WHERE column_name1=value1 AND column_name2=value2 AND column_name3=value3...
Sie können zusammengesetzte Bedingungen in einer
WHERE
Klausel verwenden, wenn eine der folgenden Bedingungen erfüllt ist:-
Die Spalten in der
WHERE
Klausel entsprechen exakt den Spalten im Primärschlüssel der Tabelle, nicht mehr und nicht weniger. -
Sie fügen
ALLOW FILTERING
nach der zusammengesetzten Bedingung in derWHERE
Klausel hinzu, wie im folgenden Beispiel.SELECT * FROM my_table WHERE col1=5 AND col2='Bob' ALLOW FILTERING ;
Beachten Sie, dass die Verwendung zu einer inkonsistenten Leistung führen
ALLOW FILTERING
kann, insbesondere bei großen und mehrfach partitionierten Tabellen.
-
Probieren Sie es aus
Erstellen Sie Ihre eigenen CQL-Abfragen, um Folgendes aus Ihrer book_awards
Tabelle zu ermitteln:
-
Finden Sie die Gewinner der Wolf Awards 2020 und zeigen Sie die Buchtitel und Autoren, sortiert nach Rang, an.
-
Zeigen Sie die Gewinner des ersten Preises für alle Auszeichnungen im Jahr 2020 an und zeigen Sie die Buchtitel und die Namen der Auszeichnungen an.