sql >> Database >  >> RDS >> MariaDB

Hoe TRIM_ORACLE() werkt in MariaDB

In MariaDB, TRIM_ORACLE() is een synoniem voor de Oracle-modusversie van de TRIM() functie.

TRIM_ORACLE() is beschikbaar in alle modi, zodat u niet hoeft over te schakelen naar de Oracle-modus, wat u zou moeten doen als u de TRIM() functie om zich te gedragen als Oracle's TRIM() functie.

Het verschil zit in hoe elke functie lege strings behandelt. Oracle retourneert null terwijl MariaDB een lege string retourneert.

Syntaxis

De syntaxis gaat als volgt:

TRIM_ORACLE([remstr FROM] str)

Of:

TRIM_ORACLE([{BOTH | LEADING | TRAILING} [remstr] FROM] str)

Waar str is de tekenreeks waarvan eventuele volgspaties moeten worden verwijderd, en remstr is de tekenreeks die moet worden verwijderd.

Als remstr niet is opgegeven, dan TRIM_ORACLE() verwijdert spaties.

Voorbeeld

Hier is een eenvoudig voorbeeld:

SELECT 
    '   Volcanic eruption   ' AS "Untrimmed",
    TRIM_ORACLE('   Volcanic eruption   ') AS "Trimmed";

Resultaat:

+-------------------------+-------------------+
| Untrimmed               | Trimmed           |
+-------------------------+-------------------+
|    Volcanic eruption    | Volcanic eruption |
+-------------------------+-------------------+

In dit voorbeeld wordt de meest elementaire syntaxis gebruikt. Het enige dat we deden, was het touwtje om te trimmen. We hebben niet gespecificeerd welk(e) teken(s) moeten worden bijgesneden, en daarom zijn alle spaties aan beide zijden van de tekenreeks bijgesneden.

We kunnen ook zien dat de spatie binnen de string intact blijft.

Zie hoe TRIM() Werkt in MariaDB voor voorbeelden van het gebruik van andere opties, zoals het opgeven van een tekenreeks die moet worden bijgesneden en welke kant van de tekenreeks moet worden bijgesneden. TRIM_ORACLE() werkt in dergelijke gevallen op precies dezelfde manier, met de mogelijke uitzondering wanneer de te trimmen string een lege string is.

Lege snaren

Een lege string doorgeven aan TRIM_ORACLE() resulteert in null wordt geretourneerd.

SELECT TRIM_ORACLE('');

Resultaat:

+-----------------+
| TRIM_ORACLE('') |
+-----------------+
| NULL            |
+-----------------+

Dit weerspiegelt de manier waarop Oracle's TRIM() functie behandelt lege strings.

In MariaDB, de TRIM() functie retourneert alleen null wanneer u de Oracle-modus gebruikt. Als het niet in Oracle-modus is, retourneert het een lege tekenreeks.

Nullargument

Als het argument null is , het resultaat is null :

SELECT TRIM_ORACLE(null);

Resultaat:

+-------------------+
| TRIM_ORACLE(null) |
+-------------------+
| NULL              |
+-------------------+

Ontbrekend argument

Aanroepen van TRIM_ORACLE() zonder een argument resulteert in een fout:

SELECT TRIM_ORACLE();

Resultaat:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1

  1. SQL Server bcp-hulpprogramma en het numerieke gegevenstype

  2. Time-outinstelling voor SQL Server

  3. Bereken kantooruren tussen twee datums

  4. is er een functie voor het vertalen van gegevens in sql