Oracle-Dekodierungsverwendung ist „DECODE(Ausdruck, Bedingung 1, Ergebnis 1, Bedingung 2, Ergebnis 2, ..., Standardergebnis)“, der Ausdruck ist das zu vergleichende Feld oder der Ausdruck und kann einen beliebigen Datentyp haben Wert, der wiederum mit der Bedingung verglichen wird. Die Bedingung kann ein Feld oder eine Konstante sein und das Ergebnis kann ein Feld, eine Konstante oder ein Ausdruck sein. Wenn ein Ausdruck einer Bedingung entspricht, gibt die DECODE-Funktion das der Bedingung entsprechende Ergebnis zurück.
Die Betriebsumgebung dieses Artikels: Windows 10-System, Oracle Version 19c, Dell G3-Computer.
Die DECODE-Funktion in Oracle ist eine bedingte Ausdrucksfunktion, deren Hauptfunktion darin besteht, das entsprechende Ergebnis gemäß den gegebenen Bedingungen zurückzugeben. Es ähnelt der switch-Anweisung oder der if-else-Anweisung in anderen Programmiersprachen. Die DECODE-Funktion akzeptiert mehrere Parameter, führt Berechnungen nach bestimmten Regeln durch und gibt ein Ergebnis zurück. Die Verwendung der DECODE-Funktion wird im Folgenden ausführlich vorgestellt. Die grundlegende Verwendung der Funktion
DECODE ist wie folgt:
DECODE(Ausdruck, Bedingung 1, Ergebnis 1, Bedingung 2, Ergebnis 2, ..., Standardergebnis)
Ausdruck ist das zu vergleichende Feld oder der Ausdruck, Dies kann ein Wert eines beliebigen Datentyps sein, der wiederum mit einer Bedingung verglichen wird. Die Bedingung kann ein Feld oder eine Konstante sein und das Ergebnis kann ein Feld, eine Konstante oder ein Ausdruck sein. Wenn ein Ausdruck einer Bedingung entspricht, gibt die DECODE-Funktion das der Bedingung entsprechende Ergebnis zurück. Wenn der Ausdruck nicht allen Bedingungen entspricht, gibt die DECODE-Funktion ein Standardergebnis zurück. Es ist zu beachten, dass die DECODE-Funktion nur für Gleichheitsvergleiche verwendet werden kann und keine anderen Vergleichsoperationen (z. B. größer als, kleiner als usw.) durchführen kann.
Das Folgende ist ein Beispiel für eine DECODE-Funktion:
SELECT last_name, salary, DECODE(job_id, 'IT_PROG', salary * 1.1, 'SA_REP', salary * 1.2, salary) AS new_salary FROM employees;
Die obige Abfrage gibt den Nachnamen und das Gehalt des Mitarbeiters zurück und berechnet das neue Gehalt basierend auf verschiedenen Stellenpositionen. Wenn die Position des Mitarbeiters „IT_PROG“ ist, beträgt das neue Gehalt das 1,1-fache des ursprünglichen Gehalts. Wenn es sich um „SA_REP“ handelt, beträgt das neue Gehalt das 1,2-fache des ursprünglichen Gehalts ursprüngliches Gehalt.
Die DECODE-Funktion kann auch auf der Grundlage mehrerer Bedingungen verglichen werden. In diesem Fall können mehrere Bedingungs- und Ergebnispaare verwendet werden. Die Reihenfolge des Vergleichs basiert auf der Reihenfolge der Parameter. Zum Beispiel:
SELECT last_name, job_id, DECODE(job_id, 'IT_PROG', 'IT', 'SA_REP', 'Sales', 'HR_REP', 'HR', 'OTHER') AS department FROM employees;
Die obige Abfrage gibt den Nachnamen des Mitarbeiters, die Jobposition und den entsprechenden Abteilungsnamen entsprechend den verschiedenen Jobpositionen zurück. Wenn die Position des Mitarbeiters zu diesem Zeitpunkt „IT_PROG“ ist, wird „IT“ zurückgegeben; wenn sie „SA_REP“ ist, wird „Sales“ zurückgegeben; wenn sie „HR_REP“ ist, wird „HR“ zurückgegeben Bei anderen Jobs wird „OTHER“ zurückgegeben.
Zusammenfassung
DECODE-Funktion ist eine sehr häufig verwendete bedingte Ausdrucksfunktion in Oracle, die je nach Bedingungen unterschiedliche Ergebnisse zurückgeben kann. Es ist flexibel und prägnant und kann verschiedene bedingte Beurteilungen verarbeiten und korrekte Ergebnisse zurückgeben. In tatsächlichen Abfragen wird die DECODE-Funktion häufig zur Feldwertkonvertierung, Datenbereinigung, Zustandsbeurteilung usw. verwendet, was die Datenverarbeitung und -analyse erheblich erleichtert
Das obige ist der detaillierte Inhalt vonWas ist die Verwendung von Oracle Decode?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!