MariaDB
 sql >> Base de Dados >  >> RDS >> MariaDB

Como RTRIM_ORACLE() funciona no MariaDB


No MariaDB, RTRIM_ORACLE() é um sinônimo para a versão do modo Oracle do RTRIM() função.

RTRIM_ORACLE() está disponível em todos os modos, por isso evita que você precise alternar para o modo Oracle, que é o que você precisaria fazer se quisesse o RTRIM() função para se comportar como o RTRIM() do Oracle função.

A diferença está em como cada função trata strings vazias. Oracle retorna null enquanto o MariaDB retorna uma string vazia.

Sintaxe


A sintaxe fica assim:
RTRIM_ORACLE(str)

Onde str é a string da qual remover quaisquer espaços à direita.

Exemplo


Aqui está um exemplo básico de como o corte funciona:
SELECT 
    '   Bruce Brewster   ' AS "Untrimmed",
    RTRIM_ORACLE('   Bruce Brewster   ') AS "Trimmed";

Resultado:
+----------------------+-------------------+
| Untrimmed            | Trimmed           |
+----------------------+-------------------+
|    Bruce Brewster    |    Bruce Brewster |
+----------------------+-------------------+

Aqui, a primeira coluna não é aparada e a segunda foi aparada com RTRIM_ORACLE() .

Podemos ver que apenas a parte direita da string é cortada. A parte esquerda permanece intacta.

Também podemos ver que o espaço dentro da string permanece intacto.

É exatamente assim que RTRIM() funciona.

Strings vazias


Passando uma string vazia para RTRIM_ORACLE() resulta em null sendo devolvido.
SELECT RTRIM_ORACLE('');

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

Isso reflete a maneira como o RTRIM() da Oracle função lida com strings vazias.

No MariaDB, o RTRIM() função retorna apenas null quando você estiver usando o modo Oracle. Quando não estiver no modo Oracle, ele retorna uma string vazia.

Argumento nulo


Se o argumento for null , o resultado é null :
SELECT RTRIM_ORACLE(null);

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

Argumento ausente


Chamando RTRIM_ORACLE() sem um argumento resulta em um erro:
SELECT RTRIM_ORACLE();

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