Formen des Fallausdrucks:
Der Ausdruck „Fall“ besteht aus zwei Formen, die:
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 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.