sql >> Base de Datos >  >> RDS >> MariaDB

Cómo funciona TRIM_ORACLE() en MariaDB

En MariaDB, TRIM_ORACLE() es un sinónimo de la versión en modo Oracle de TRIM() función.

TRIM_ORACLE() está disponible en todos los modos, por lo que le evita tener que cambiar al modo Oracle, que es lo que tendría que hacer si quisiera el TRIM() función para comportarse como TRIM() de Oracle función.

La diferencia está en cómo cada función trata las cadenas vacías. Oracle devuelve null mientras que MariaDB devuelve una cadena vacía.

Sintaxis

La sintaxis es así:

TRIM_ORACLE([remstr FROM] str)

O:

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

Donde str es la cadena para eliminar los espacios finales, y remstr es la cadena a eliminar.

Si remstr no se proporciona, entonces TRIM_ORACLE() elimina espacios.

Ejemplo

He aquí un ejemplo básico:

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

Resultado:

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

Este ejemplo utiliza la sintaxis más básica. Todo lo que hicimos fue proporcionar la cuerda para recortar. No especificamos qué carácter/es recortar, por lo que todos los espacios se recortaron de ambos lados de la cadena.

También podemos ver que el espacio dentro de la cadena permanece intacto.

Vea cómo TRIM() Funciona en MariaDB para obtener ejemplos del uso de otras opciones, como especificar una cadena para recortar y qué lado de la cadena recortar. TRIM_ORACLE() funciona exactamente de la misma manera en tales casos, con la posible excepción de cuando la cadena que se va a recortar es una cadena vacía.

Cadenas vacías

Pasar una cadena vacía a TRIM_ORACLE() da como resultado null siendo devuelto.

SELECT TRIM_ORACLE('');

Resultado:

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

Esto refleja la forma en que TRIM() de Oracle La función trata con cadenas vacías.

En MariaDB, el TRIM() la función solo devuelve null cuando está utilizando el modo Oracle. Cuando no está en modo Oracle, devuelve una cadena vacía.

Argumento nulo

Si el argumento es null , el resultado es null :

SELECT TRIM_ORACLE(null);

Resultado:

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

Argumento faltante

Llamando a TRIM_ORACLE() sin un argumento da como resultado un error:

SELECT TRIM_ORACLE();

Resultado:

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