Einfache CASE WHEN-Funktion:FALL-ERGEBNIS WENN 'A' DANN 'Ausgezeichnet' SONST 'Nicht bestanden' ENDE FALL-ERGEBNIS WENN 'B' DANN 'Gut' SONST 'Nicht bestanden' ENDE FALL-ERGEBNIS WENN 'C' DANN 'Mittel' SONST 'Fehlgeschlagen' ENDE Dies entspricht der Verwendung der bedingten Ausdrucksfunktion CASE WHEN:Fall: Wenn Punktzahl = „A“, dann „Ausgezeichnet“ WENN ERGEBNIS = ‚B‘, DANN ‚Gut‘ WENN ERGEBNIS = 'C' DANN 'Mittel' SONST 'Nicht bestanden' ENDE Der Wert nach THEN sollte vom gleichen Typ sein wie der Wert nach ELSE, andernfalls wird ein Fehler gemeldet. wie folgt:Fallergebnis: Wenn „A“ ist, dann „Ausgezeichnet“, sonst 0. Ende Wenn die Datentypen „Ausgezeichnet“ und 0 inkonsistent sind, wird ein Fehler gemeldet: [Err] ORA-00932: inkonsistente Datentypen: CHAR erwartet, NUMBER erhalten Die einfache CASE WHEN-Funktion kann nur einige einfache Geschäftsszenarien verarbeiten, während die Schreibregeln des bedingten CASE WHEN-Ausdrucks flexibler sind. CASE WHEN-Funktion für bedingte Ausdrücke: ähnlich der IF ELSE-Anweisung in JAVA. Format: FALL, WENN Bedingung, DANN Ergebnis [WANN...DANN...] ELSE Ergebnis ENDE Bedingung ist ein Ausdruck, der einen Booleschen Typ zurückgibt. Wenn der Ausdruck „true“ zurückgibt, gibt die gesamte Funktion den Wert des entsprechenden Ergebnisses zurück. Wenn alle Ausdrücke „false“ sind, wird der Wert des Ergebnisses nach ElSE zurückgegeben. Wenn die ELSE-Klausel weggelassen wird, wird NULL zurückgegeben. Im Folgenden sind einige häufige Szenarien aufgeführt.
WÄHLEN STUDENTENNAME, (FALL, WENN Punktzahl < 60, DANN „nicht bestanden“ WENN Punktzahl >= 60 UND Punktzahl < 80, DANN „bestanden“ WENN Punktzahl >= 80, DANN „Ausgezeichnet“ ELSE 'Ausnahme' END) AS REMARK AUS TISCH Hinweis : Wenn Sie prüfen möchten, ob die Punktzahl null ist, ist dies eine falsche Schreibweise. WENN Punktzahl = null, DANN „nicht bei der Prüfung anwesend“. Die korrekte Schreibweise lautet: CASE WHEN score IS NULL THEN 'Nicht bei der Prüfung anwesend' ELSE 'Normal' END
Die Tabellenstruktur ist wie folgt: Im Feld STU_SEX steht 0 für einen Jungen und 1 für ein Mädchen.
WÄHLEN SUMME (FALL, WENN STU_SEX = 0, DANN 1, SONST 0, ENDE) ALS MALE_COUNT, SUMME (FALL, WENN STU_SEX = 1, DANN 1, SONST 0, ENDE) ALS FEMALE_COUNT, SUMME (FALL, WENN STU_SCORE >= 60 UND STU_SEX = 0, DANN 1, SONST 0, ENDE) ALS MALE_PASS, SUMME (FALL, WENN STU_SCORE >= 60 UND STU_SEX = 1, DANN 1, SONST 0, ENDE) ALS FEMALE_PASS AUS THTF_STUDENTEN Die Ausgabe lautet wie folgt:
Die Energieverbrauchstabelle sieht wie folgt aus: E_TYPE steht für den Energieverbrauchstyp, 0 steht für den Wasserverbrauch, 1 steht für den Stromverbrauch und 2 steht für den Wärmeverbrauch
WÄHLEN E_CODE, SUM(CASE WHEN E_TYPE = 0 THEN E_VALUE ELSE 0 END) AS WATER_ENERGY,--Wasserverbrauch SUM(CASE WHEN E_TYPE = 1 THEN E_VALUE ELSE 0 END) AS ELE_ENERGY,--Stromverbrauch SUM(CASE WHEN E_TYPE = 2 THEN E_VALUE ELSE 0 END) AS HEAT_ENERGY--Wärmeverbrauch FROM THTF_ENERGY_TEST GRUPPELN NACH E_CODE Die Ausgabe ist wie folgt :
Die Preisliste lautet wie folgt:
Wenn der Energieverbrauchswert kleiner als 10 ist, wird der P_PRICE-Wert bei P_LEVEL=0 verwendet. Wenn der Energieverbrauchswert größer als 10 und kleiner als 30 ist, wird der P_PRICE-Wert bei P_LEVEL=1 verwendet. FALL, WENN Energie <= (WÄHLEN SIE P_LIMIT AUS TABELLENPREIS, WO P_LEVEL = 0) DANN (WÄHLEN SIE P_PRICE AUS TABELLENPREIS, WO P_LEVEL = 0) WENN Energie > (SELECT P_LIMIT FROM TABLE_PRICE WHERE P_LEVEL = 0) UND Energie <= (SELECT P_LIMIT FROM TABLE_PRICE WHERE P_LEVEL = 1) DANN (SELECT P_PRICE FROM TABLE_PRICE WHERE P_LEVEL = 1) WENN Energie > (SELECT P_LIMIT FROM TABLE_PRICE WHERE P_LEVEL = 1) UND Energie <= (SELECT P_LIMIT FROM TABLE_PRICE WHERE P_LEVEL = 2) DANN (SELECT P_PRICE FROM TABLE_PRICE WHERE P_LEVEL = 2)
Die CASE WHEN-Funktion ist einfach zu verwenden und leicht zu verstehen. Dieser Artikel gibt nur eine kurze Einführung in ihre Verwendung. In der tatsächlichen Arbeit muss sie je nach unterschiedlichen Geschäftsszenarien flexibel eingesetzt werden. ZusammenfassenDieser Artikel endet hier. Ich hoffe, er kann Ihnen helfen. Ich hoffe auch, dass Sie mehr Inhalten auf 123WORDPRESS.COM mehr Aufmerksamkeit schenken können! Das könnte Sie auch interessieren:
|
<<: Zusammenfassung der Dinge, auf die Sie in der Fußzeile einer Webseite achten sollten
>>: CSS zum Erzielen des Skeleton Screen-Effekts
Sie können Docker installieren und einfache Vorgä...
1. Installieren Sie das systemübergreifende Datei...
Inhaltsverzeichnis Überblick Die vier Hauptobjekt...
Vorwort Lernen Sie MySQL, um frühere Nicht-MK-Dat...
Frage Durch Klicken auf ein Steuerelement wird ei...
In diesem Artikelbeispiel wird der spezifische Co...
1. Die proxy_pass -Direktive des Moduls 1.ngx_str...
Wirkung: <!doctype html> <html> <K...
Vorwort Derzeit ist das von meiner Firma verwende...
lsof (List Open Files) ist ein Tool zum Anzeigen ...
Die bidirektionale MySQL-Sicherung wird auch als ...
Inhaltsverzeichnis Gemeinsame Funktionen von Linu...
Um die Wirkung direkt zu sehen, wurde ein Rechtsk...
Ändern Sie die vereinfachte Dateigröße und laden ...
Inhaltsverzeichnis Optimieren von Sortierabfragen...