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

Cómo funciona RTRIM_ORACLE() en MariaDB

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

RTRIM_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 RTRIM() función para comportarse como RTRIM() 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í:

RTRIM_ORACLE(str)

Donde str es la cadena de la que se eliminarán los espacios finales.

Ejemplo

Este es un ejemplo básico de cómo funciona el recorte:

SELECT 
    '   Bruce Brewster   ' AS "Untrimmed",
    RTRIM_ORACLE('   Bruce Brewster   ') AS "Trimmed";

Resultado:

+----------------------+-------------------+
| Untrimmed            | Trimmed           |
+----------------------+-------------------+
|    Bruce Brewster    |    Bruce Brewster |
+----------------------+-------------------+

Aquí, la primera columna no está recortada y la segunda se ha recortado con RTRIM_ORACLE() .

Podemos ver que solo se recorta la parte derecha de la cuerda. La parte izquierda permanece intacta.

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

Así es exactamente como RTRIM() funciona.

Cadenas vacías

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

SELECT RTRIM_ORACLE('');

Resultado:

+------------------+
| RTRIM_ORACLE('') |
+------------------+
| NULL             |
+------------------+

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

En MariaDB, el RTRIM() 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 RTRIM_ORACLE(null);

Resultado:

+--------------------+
| RTRIM_ORACLE(null) |
+--------------------+
| NULL               |
+--------------------+

Argumento faltante

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

SELECT RTRIM_ORACLE();

Resultado:

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