In diesem Tutorial erfahren wir die Funktion translate () in der Oracle -Datenbank, um eine Zeichensequenz durch eine andere zu ersetzen.
Oracle Translate -Funktion
In Oracle können Sie mit der Übersetzungsfunktion einen bestimmten Zeichen von Zeichen durch einen anderen Charakter nach dem anderen ersetzen.
Nehmen Sie den folgenden Ausschnitt, der die Funktionssyntax ausdrückt:
Translate (String, From_String, Ersatz_String);
Aus der bereitgestellten Syntax akzeptiert die Funktion drei Hauptargumente:
Sobald die Übersetzungsfunktion die angegebene Substitution ausführt, gibt sie die Zeichenfolge mit den ersetzten Übereinstimmungen zurück. Wenn jedoch Funktionsparameter null sind, erzeugt die Funktion automatisch einen Null -Typ.
Beispiel für Funktionsnutzung
Im Folgenden sind Beispiele aufgeführt, die die Verwendung der Translate () -Funktion demonstrieren.
Beispiel 1: Grundfunktionsnutzung
Der folgende Code zeigt, wie die Übersetzungsfunktion verwendet wird, um alle „A“ -Schzeichen durch ein Sternchenzeichen zu ersetzen:
Wählen Sie Translate ('Oracle -Datenbanken', 'a', '*') wie übersetzt
von Dual;
Die resultierende Zeichenfolge lautet wie folgt:
Übersetzt
---------------------
Oder*cle d*t*b*ses
Beispiel 2: Ersetzen mehrerer Zeichen
Wir können die Mehrfachzeichen auch anhand der Übersetzungsfunktion ersetzen, wie im folgenden Beispiel gezeigt:
Wählen Sie Translate ('Oracle -Datenbanken', 'AB', 'xy') wie übersetzt
von Dual;
Ausgang:
Übersetzt
------------------
Orxcle dxtxyxses
Beispiel 3: Einstellen des Ersatzes_String als leer
Betrachten Sie dieses Beispiel, das zeigt, wie sich die Funktion verhält, wenn wir den Parameter Ersatz_String auf einen leeren Wert einstellen.
Wählen Sie Translate ('Oracle -Datenbanken', 'AB', ") wie übersetzt
von Dual;
In diesem Fall gibt die Funktion eine leere Zeichenfolge zurück. Dies liegt daran, dass eine leere Zeichenfolge als Nullwert behandelt wird. Denken Sie daran, dass die Funktion immer Null zurückgibt, wenn einer der Parameter null ist.
Beispiel 4: unübertroffene Sequenz
Was passiert, wenn die angegebenen aus _string -Zeichen nicht im Source_String gefunden werden?
Die folgende Abbildung zeigt dies:
Wählen Sie Translate ('Oracle -Datenbanken', 'xx', '*') wie übersetzt
von Dual;
Ausgang:
Übersetzt
-----------------
Oracle -Datenbanken
Wie Sie erraten können, führt die Funktion keine Aktion in der Quellzeichenfolge aus.
Abschluss
In diesem Tutorial wurde Ihnen beigebracht. Beachten Sie, dass sich die Übersetzungsfunktion zwar ähnlich wie die Ersatzfunktion verhält, sich jedoch im Ersatzmodus unterscheiden. Die Ersatzfunktion führt einen gesamten String -Ersatz aus im Vergleich zum Ersetzen eines Zeichens in der Übersetzungsfunktion.