728 Shares 9624 views

Die Select (SQL) -Anweisung

Die Übersetzung der SQL-Abkürzung (die Sprache der strukturell organisierten Abfragen) spiegelt die Tatsache wider, dass Abfragen das am häufigsten verwendete Element in SQL sind. Markieren Sie die notwendigen Zeilen, schließen Sie die redundanten Daten automatisch aus, überspringen oder ordnen Sie die Spalten an. Wählen Sie (SQL) – ein Operator, der dem DBMS mitteilt, dass er bestimmte Informationen ausgibt.

Operator-Syntax

Um einen Bediener richtig zu benutzen, musst du dich zuerst mit der Syntax der Programmiersprache vertraut machen. Wenn wir spezifisch über die SQL-Sprache sprechen, hat Select (der Operator) die folgende Syntax:

Auswählen

Erzählt der Datenbank, dass wir die Anfrage übermitteln. Dies ist das Schlüsselwort.

Eins, zwei, drei …

Liste der Spalten für die Ausgabe

Von

Gibt den Namen der Tabelle an, aus der die Daten ausgewählt werden sollen. Es ist auch ein Pflichtwort.

Dies ist die so genannte "kurze" Syntax des Operators, aber es zeigt uns an, dass ohne die Select-Schlüsselwörter und aus dem DBMS unsere Abfrage nicht ausgeführt wird.

Die vollständige Syntax für den Bediener ist in der folgenden Abbildung dargestellt:

Hier können Sie mit der Wo-Klausel die Suche verfeinern, indem Sie eine Bedingung angeben.

Um Gruppen zu gruppieren und eine aggregierte Funktion an sie anzuwenden, wird die Group-by-Klausel verwendet und um das Ergebnis nach der Gruppierung anzugeben, wobei der Vorschlag verwendet wird.

Mit der Bestellung können Sie die Werte der ausgewählten Spalten in aufsteigender oder absteigender Reihenfolge sortieren.

с информацией: Um ein besseres Verständnis der Select-Operator zu bekommen, stellen wir uns vor, dass in unserer Datenbank die folgenden Cats- Tabelle mit den Informationen:

Id

Zucht

Name

Geburtstag

Farbe

1

Bobtail

Herr

04/01/2017

Grau

2

Curl

Fint

16.03.2012

Weiß

3

Mau

Panther

03/03/2017

Schwarz

4

Bobtail

Tyson

02/23/2017

Grau

5

Burmilla

Athena

01/08/2017

Schwarz

Jede Zeile der Tabelle enthält die eindeutige Nummer des Kätzchens, seine Rasse, Spitzname, Geburtsdatum und Färbung. Als nächstes werden wir überlegen, wie der Select (SQL) -Operator arbeitet, basierend auf den Daten aus dieser Tabelle.

Wie Daten aus einer Tabelle geholt werden

Wie oben diskutiert, werden Schlüsselwörter immer verwendet, um die richtigen Informationen aus der Tabelle auszuwählen.

Nach dem Schlüsselwort Select werden Spalten für die Ausgabe angegeben. Sie können eine Liste der erforderlichen Spalten durch ein Komma getrennt, dann wird die ganze Struktur wie folgt aussehen:

Wähle Farbe, Rasse, Name

Von Katzen

Wie Sie sehen können, können wir die Spalten in der Reihenfolge ordnen, in der sie gebraucht werden. Darüber hinaus können wir nur die Spalten anzeigen, die wir brauchen.

Es gibt auch einen kurzen Eintrag für die Anzeige aller Spalten der Tabelle. Um dies zu tun, wird nach der Auswahl ein Sternchen (*) mit einem Leerzeichen angezeigt. Das ganze Design sieht so aus:

Wählen Sie *

Von Katzen

Das Ergebnis der obigen Abfrage ist die gesamte Katzen-Tabelle, dargestellt, wie sie am Ende des letzten Abschnitts erscheint.

Viele Leute sind daran interessiert, wie man die Ergebnisse der Ausführung in SQL Select in einem String platziert. Am häufigsten ist dies erforderlich, wenn es notwendig ist, den Nachnamen, den Vornamen und die Patronomen der Person zu kombinieren, die in unzusammenhängenden Säulen platziert sind.

In unserem Fall kombinieren wir die Rasse und die Farbe der Katzen aus dem Tisch Katzen. Die Nuance ist, dass verschiedene DBMS verschiedene Zeichen für String-Verkettung verwenden. In manchen Fällen ist dies nur ein Plus (+), in anderen – eine doppelte Zeile (||) oder ein Und-Zeichen (&), manchmal wird der Concat-Operand verwendet. Deshalb müssen Sie vor der Verschmelzung die Annotation zum jeweiligen DBMS lesen, mit dem Sie arbeiten.

Wählen Sie Rasse || ',' || Farbe

Von Katzen

Das Ergebnis ist folgendes:

Rasse, Farbe

Bobtail, grau

Curl, weiß

Mau, Schwarz

Bobtail, grau

Burmilla, Schwarz

Ohne redundante Daten auszuschließen

Distinct – function Select (SQL), die es erlaubt, die Duplizierung von absolut identischen Zeilen aus dem Ergebnis der Probe auszuschließen.

Zum Beispiel wollen wir herausfinden, welche Katzen in unserem Tisch sind. Wenn wir eine einfache Abfrage verwenden:

Wählen Sie eine Rasse

Von Katzen

Dass wir ein sehr erwartbares Ergebnis erhalten werden:

Zucht

Bobtail

Curl

Mau

Bobtail

Burmilla

Wie Sie sehen können, wird die Bobtail-Rasse zweimal dupliziert. Argument Distinct wird Duplizierung zu beseitigen, müssen Sie nur die Abfrage abzuschließen:

Wählen Sie eine bestimmte Rasse

Von Katzen

Verfeinerung der Anfrage

In Wirklichkeit gibt fast keine Abfrage Daten als vollständigen Satz von Tabellenzeilen aus. Betrachten wir, welchen Satz in Select (SQL) erlaubt, Kriterien für die Auswahl nur die notwendigen Zeilen festzulegen.

Hier ist wo In diesem Satz wird ein Prädikat verwendet – ein bedingter Ausdruck, der dem Ausgang den Wert "true" oder "false" gibt. Die Select-Anweisung ruft nur die Daten aus der Tabelle ab, für die der bedingte Ausdruck True oder "true" ist.

Es wird dazu beitragen, mit diesem Design eine einfache Probe zu sortieren. Nehmen wir an, wir wollen alles über schwarze Katzen wissen.

Wählen Sie *

Von Katzen

Wo Farbe = 'Schwarz'

Das Ergebnis dieser Abfrage sind die folgenden Zeilen der Tabelle:

3

Mau

Panther

03/03/2017

Schwarz

5

Burmilla

Athena

01/08/2017

Schwarz

Sie können auch Bedingungen kombinieren mit And, Or, Not Logic Operatoren.

Gruppe von

Die Group-by-Klausel, die in Select (SQL) verwendet wird, ermöglicht es Ihnen, Abfragen nach dem Wert einer bestimmten Spalte (oder Spalten) zu gruppieren und dann die aggregierte Funktion an sie anzuwenden.

Zu den aggregierten Funktionen gehören:

  • Count – berechnet die Anzahl der von der Abfrage ausgewählten Zeilen.
  • Summe ist die arithmetische Summe aller ausgewählten Spaltenwerte.
  • Min – druckt das Minimum der ausgewählten Spaltenwerte.
  • Max ist das Maximum der ausgewählten Spaltenwerte.
  • Avg ist der Durchschnitt.

Das Schema dieses Vorschlags wird am einfachsten in einem konkreten Beispiel verstanden. Nehmen wir an, wir wollen wissen, wie viele Kätzchen jeder Rasse wir haben. Um dies zu tun, müssen Sie die folgende einfache Abfrage generieren:

Wählen Sie Rasse, zählen (*)

Von Katzen

Gruppe von Rasse

Das Ergebnis der Ausführung ist die folgende Tabelle:

Zucht

Zählen

Bobtail

2

Curl

1

Mau

1

Burmilla

1

Wie Sie sehen können, haben wir zwei Bobtails mit Kätzchen, der Rest hat nur einen. In der Praxis, nach diesem Antrag, basierend auf unserem Tisch, kann der Züchter verstehen, welche Rassen Katzen bei den Käufern gefragt sind und welche nicht.

Es ist wahrscheinlich, dass es wegen der riesigen Anzahl von Einträgen in einem echten Tisch immer noch notwendig ist, die Abfrage zu klären und nur die Rassen von Kätzchen zurückzuziehen, die nicht mehr übrig sind, z. B. zehn. Um zu verfeinern oder zu filtern, verwenden Sie die Klausel. Es erlaubt Ihnen, bestimmte Gruppen zu fallen, ähnlich der Wo-Klausel, die einzelne Zeilen verwirft. Die Bedingung wird durch die Aggregatfunktion gegeben. Wir werden die Abfrage hinzufügen:

Wählen Sie Rasse, zählen (*)

Von Katzen

Gruppe von Rasse

Mit count (*) <= 10

Da die Bedingung, die wir setzen, "die Anzahl der Kätzchen jeder Rasse ist nicht mehr als 10", ist das Ergebnis das gleiche wie im Beispiel ohne Spezifikation. Aber hier ist es wichtig, das Schema der Arbeit des Vorschlags zu verstehen. Aber wenn wir die logische Bedingung ändern, um die Zählung (*) = 1 zu haben, dann wird das Ergebnis auf drei Zeilen reduziert und die Rasse der Kätzchen ausgegeben, die nur eine übrig hat.

Sortierung

Lassen Sie uns mit dem Order – Satz des Select – (SQL -) – Operators vertraut sein, mit dem Sie die Ausgabezeilen durch Erhöhen oder Verringern von Werten in einer oder mehreren Spalten sortieren können.

Es ist wichtig, sich daran zu erinnern, dass Order by der letzte Satz des gesamten Konstrukts der Select-Anweisung ist. Es ist platziert nach Select, Von, Wo, Gruppe von, Having.

Bei der Sortierung gibt es drei wichtige Punkte:

1) Sie können eine beliebige Anzahl von Spalten angeben, von denen jeder einzeln entweder aufsteigend (ASC) oder absteigend (DESC) sortiert werden kann.

2) Alle angegebenen Spalten in der Order-by-Klausel müssen unter den ausgewählten Spalten in Select vorhanden sein.

3) Es ist nicht notwendig, spezifische Spaltennamen für die Sortierung aufzulisten, man kann einfach ihre Nummern angeben, unter denen sie in der Select-Anweisung gehen.

Wir hoffen, dass Sie mit Hilfe dieses Artikels grundlegende Kenntnisse über die Verwendung von SQL-Abfragen erhalten haben und nun können Sie einfach die notwendigen Informationen aus Ihrem DBMS auswählen.