No MariaDB,
TRIM_ORACLE()
é um sinônimo para a versão do modo Oracle do TRIM()
função. TRIM_ORACLE()
está disponível em todos os modos, por isso evita que você tenha que alternar para o modo Oracle, que é o que você precisaria fazer se quisesse o TRIM()
função para se comportar como o TRIM()
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:
TRIM_ORACLE([remstr FROM] str)
Ou:
TRIM_ORACLE([{BOTH | LEADING | TRAILING} [remstr] FROM] str)
Onde
str
é a string da qual remover quaisquer espaços à direita e remstr
é a string a ser removida. Se
remstr
não for fornecido, então TRIM_ORACLE()
remove espaços. Exemplo
Segue um exemplo básico:
SELECT
' Volcanic eruption ' AS "Untrimmed",
TRIM_ORACLE(' Volcanic eruption ') AS "Trimmed";
Resultado:
+-------------------------+-------------------+ | Untrimmed | Trimmed | +-------------------------+-------------------+ | Volcanic eruption | Volcanic eruption | +-------------------------+-------------------+
Este exemplo usa a sintaxe mais básica. Tudo o que fizemos foi fornecer a corda para aparar. Não especificamos quais caracteres aparar e, portanto, todos os espaços foram aparados de ambos os lados da string.
Também podemos ver que o espaço dentro da string permanece intacto.
Veja como
TRIM()
Funciona no MariaDB para exemplos de uso de outras opções, como especificar uma string a ser aparada e qual lado da string a ser aparada. TRIM_ORACLE()
funciona exatamente da mesma maneira nesses casos, com a possível exceção de quando a string a ser cortada é uma string vazia. Strings vazias
Passando uma string vazia para
TRIM_ORACLE()
resulta em null
sendo devolvido. SELECT TRIM_ORACLE('');
Resultado:
+-----------------+ | TRIM_ORACLE('') | +-----------------+ | NULL | +-----------------+
Isso reflete a maneira como o
TRIM()
da Oracle função lida com strings vazias. No MariaDB, o
TRIM()
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 TRIM_ORACLE(null);
Resultado:
+-------------------+ | TRIM_ORACLE(null) | +-------------------+ | NULL | +-------------------+
Argumento ausente
Chamando
TRIM_ORACLE()
sem um argumento resulta em um erro: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