sql >> Databasteknik >  >> RDS >> MariaDB

Hur LTRIM_ORACLE() fungerar i MariaDB

I MariaDB, LTRIM_ORACLE() är en synonym för Oracle-lägesversionen av LTRIM() fungera.

LTRIM_ORACLE() är tillgänglig i alla lägen, så det slipper du behöva byta till Oracle-läge, vilket är vad du skulle behöva göra om du ville ha LTRIM() funktion för att bete sig som Oracles LTRIM() funktion.

Skillnaden ligger i hur varje funktion behandlar tomma strängar. Oracle returnerar null medan MariaDB returnerar en tom sträng.

Syntax

Syntaxen ser ut så här:

LTRIM_ORACLE(str)

Där str är strängen att ta bort inledande mellanslag från.

Exempel

Här är ett grundläggande exempel på hur trimningen fungerar:

SELECT 
    '   Jumping Jack   ' AS "Untrimmed",
    LTRIM_ORACLE('   Jumping Jack   ') AS "Trimmed";

Resultat:

+--------------------+-----------------+
| Untrimmed          | Trimmed         |
+--------------------+-----------------+
|    Jumping Jack    | Jumping Jack    |
+--------------------+-----------------+

Här är den första kolumnen otrimmad och den andra har trimmats med LTRIM_ORACLE() .

Vi kan se att endast den vänstra delen av strängen trimmas. Den högra delen lämnas intakt.

Vi kan också se att utrymmet i strängen lämnas intakt.

Så här är LTRIM() fungerar.

Tömma strängar

Skickar en tom sträng till LTRIM_ORACLE() resulterar i null returneras.

SELECT LTRIM_ORACLE('');

Resultat:

+------------------+
| LTRIM_ORACLE('') |
+------------------+
| NULL             |
+------------------+

Detta återspeglar hur Oracles LTRIM() används funktion hanterar tomma strängar.

I MariaDB, LTRIM() funktion returnerar endast null när du använder Oracle-läge. När den inte är i Oracle-läge returnerar den en tom sträng.

Nollargument

Om argumentet är null , resultatet är null :

SELECT LTRIM_ORACLE(null);

Resultat:

+--------------------+
| LTRIM_ORACLE(null) |
+--------------------+
| NULL               |
+--------------------+

Argument saknas

Anropar LTRIM_ORACLE() utan argument resulterar i ett fel:

SELECT LTRIM_ORACLE();

Resultat:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'LTRIM_ORACLE'

  1. Exportera SQLite-databas till XML-fil

  2. MySQL - tvinga att inte använda cache för att testa frågans hastighet

  3. Varför skulle ett IN-villkor vara långsammare än =i sql?

  4. Hur man genererar automatiskt inkrementfält i den valda frågan