Postgres Fallausdruck

Postgres Fallausdruck
Sie müssen einen Ausdruck für Ihre bedingten Abfragen in einer Anweisung verwenden, die mit if/ else -Anweisungen erfolgen kann. PostgreSQL unterstützt jedoch nicht, ob/ else Anweisungen. Die Alternative für if/ else -Anweisungen in PostgreSQL besteht darin. Mit dem Ausdruck „Fall“ in PostgreSQL können Sie IF/ sonst -Anweisungen als bedingter Ausdruck verwenden, in dem Sie in jeder „Fall“ Anweisungen mit „wann“ und „dann“ ausführen können. Der Ausdruck „Fall“ kann auch mit anderen Ausdrücken verwendet werden, wie z. In diesem Artikel werden wir Kenntnisse über verschiedene Formen von „Fall“ -Anweisungen erlangen und verschiedene Beispiele für „Fall“ -Anweisungen unter Verwendung von „Wann“ und „dann“ Fällen in Beispielen demonstrieren, die das Verständnis erheblich erleichtern werden.

Formen des Fallausdrucks:

Der Ausdruck „Fall“ besteht aus zwei Formen, die:

  1. Einfache Ausdrucksanweisungen für „Fall“.
  2. Allgemeine/ durchsuchte "Fall" -Spressionsanweisungen.

Beide Formen definieren einen bedingten Ausdruck in einer Abfrage, die wir in weiteren Beispielen in diesem Artikel untersuchen werden.

Einfache "Fall" Ausdrucksanweisungen in PostgreSQL:

Die erste Form der Basis -Syntax der „Fall“ wird unten erwähnt:

In dieser Aussage wird der Ausdruck „Fall“ zunächst den "Ausdruck" ausführen und bewerten und die Ergebnisse mit der "Wann" -Klause.). Wenn es das Match findet, wird die Klausel "Wann" ausgeführt.

Wenn keine Übereinstimmungen gefunden werden, wird die Klausel "else" mit den darin enthaltenen "else-statements" ausgeführt. Es ist unnötig, die Klausel "else" in die Abfrage einzubeziehen, da sie optional ist. Wenn es jedoch keine "sonst" -Klauseln gibt und die Übereinstimmung noch nicht gefunden wird, gibt PostgreSQL einen Ausnahmefehler.

Um Abfragen auszuführen und bedingte Ausdrücke in Ihre Erklärung aufzunehmen. Ich habe als Beispiel eine Tabelle generiert:

Erstellen von Tabellenpassagieren_info (
"ID" int Primärschlüssel ,
"Name" Varchar (100) ,
"E -Mail" Varchar (255) Einzigartig ,
Ganzzahl "Alter" ,
"Travel_to" Varchar (255) ,
Ganzzahl "Zahlung" ,
"Travel_Date" Datum
)

Nach dem Einfügen einiger Werte in die obige Tabelle sieht die Tabelle so aus:

Wenn die Tabelle erstellt wird, tauchen wir in einige Beispiele für einfache PostgreSQL -Ausdrücke unten ein:

Einfache Beispiele für „Fall“ Ausdruck:

In der oben erstellten Tabelle „Passagiere_info“ verwenden wir die einfachen "Fall" -Auskörper in den Aussagen. Im folgenden Beispiel habe ich den Ausdruck „Fall“ verwendet, um in welcher Alterszeit die Passagiere enthalten sind. Zum Beispiel wird eine Person, die Alter "22" ist. Unten finden Sie die Demonstration dieses Beispiels:

Wählen Sie "ID", "Name",
FALL
Wenn "Alter" <30 THEN 'In twenties'
Wenn "Alter" <40 THEN 'In thirties'
Wenn "Alter"> = 40 dann 'mittleren Alters'
Ende alter_era
Von "Passagiere_info"
Bestellung durch "ID";

In der obigen Erklärung,

  • Die Klausel "Auswählen" wählt die Spalten aus, die in der Ausgabe angezeigt werden müssen.
  • Im Ausdruck "Fall" wird die Bedingung in der Klausel "Wann" verglichen, wenn ein Passagier mit einem Alter von weniger als 30 Jahren vorhanden ist.
  • Die Klausel "Ende" soll den Zustand beenden, und 'ayma' gibt den Namen der Spalte in der Ausgabe an. Sie können einen anderen Namen entsprechend angeben.
  • Die Klausel „From“ extrahiert die Daten aus der genannten Tabelle.
  • Schließlich ist die Klausel „Order by“ optional; Es wird verwendet, um die Ergebnisse in zunehmender Reihenfolge mit "ID" zu bestellen.

Die obige Anweisung gibt die folgende Ausgabe auf dem Bildschirm an:

Wie wir sehen können.

Einfacher „Fall“ -Ausdruck mit Summenfunktion in PostgreSQL:

Wir können Aggregatfunktionen wie Count, Summe, AVG, Min, Max usw. verwenden. Funktionen in unseren Aussagen auch innerhalb von „Fall“ -Auskundschaften. Im folgenden Beispiel werden wir feststellen, wie Sie in "Fall" -Donessungsanweisungen "Summe" -Funktion verwenden können:

WÄHLEN
SUMME
(Fall "Travel_to"
Wenn 'Paris' dann 1
Sonst 0
Ende) "Tavelling Paris",
SUMME
(Fall "Travel_to"
Wenn 'Newyork' dann 1
Sonst 0
Ende) "Tavelling Newyork",
SUMME
(Fall "Travel_to"
Wenn 'Sydney' dann 1
Sonst 0
Ende) "Tavelling Sydney",
SUMME
(Fall "Travel_to"
Wenn 'Hogwarts' dann 1
Sonst 0
Ende) "Tavelling Hogwarts",
SUMME
(Fall "Travel_to"
Wenn 'Malediven' dann 1
Sonst 0
Ende) "Tavelling Masering" ",
SUMME
(Fall "Travel_to"
Wenn 'Griechenland' dann 1
Sonst 0
Ende) "Tavelling Griechenland"
Von "Passagers_info";

Die obige Syntax verwendet die Funktion „Summe“, um zu berechnen, wie viele Passagiere in eine bestimmte Stadt reisen. Die Ausgabe für die folgende Syntax ist unten beigefügt:

Dieses Ausgabeergebnis zeigt die Anzahl der Passagiere, in die in welcher Stadt reisen.

Allgemeine/ durchsuchte "Fall" -Eressionsanweisungen in PostgreSQL:

Die folgende Syntax zeigt die grundlegende Anweisung, um allgemeine oder durchsuchte "Fall" -Auskörper in PostgreSQL zu schreiben:

Bei durchsuchten oder allgemeinen „Fall“ -Auskontos sind die Bedingungen boolesche Ausdrücke, und „Fall“ sind von diesen booleschen Ausdrücken abhängig. Der Ausdruck „Fall“ bewertet jede Bedingung in der Aussage, bis die „wahre“ Bedingung beruht. Wenn es die wahre Bedingung irgendwann findet, geht es nicht zum nächsten Ausdruck und gibt das tatsächliche Bedingungsergebnis zurück. Wenn festgestellt wird, dass keine Bedingung wahr ist, wird die Anweisung "else" -Klaus.

Allgemeiner „Fall“ -Ausdruck mit Summenfunktion im PostgreSQL -Beispiel:

In diesem Beispiel werden wir die Passagiere dividieren und berechnen, die in zwei Klassen i reisen i.e. Wirtschaft und Geschäftsklasse mit der Funktion „Summe“:

WÄHLEN
SUMME
(FALL
Wenn "Zahlung" 100000 dann 1
Sonst 0
ENDE
) Als "Business_class"
Von Passagieren_info;

In der obigen Erklärung haben wir die Bedingung genutzt, dass Passagiere mit einer Zahlung von weniger als 1 LAC -Reisen in die Economy -Klasse und mehr als 1 LAC in die Business Class reisen werden. Die Ausgabe wird als:

Abschluss:

Abschließend haben wir in diesem Artikel gelernt. Es gibt zwei Formen des „Fall“ -Spression, und beide können verwendet werden, um das gewünschte Ergebnis zu erzielen. Wir haben auch einige Beispiele mit "Fall" mit "Wann" und "dann" -Klauseln in Aussagen ausgeführt.