Desenvolvedores SQL frequentemente encontram problemas com espaços no início e/ou final de uma string de caracteres. Nas versões anteriores do SQL Server, as funções LTRIM e RTRIM eram usadas para remover espaços à esquerda e à direita de uma string. No entanto, com a introdução do SQL Server 2017, uma nova função interna chamada TRIM foi adicionada, permitindo a remoção de caracteres tanto à esquerda quanto à direita com uma única função.
Vamos explorar o uso dessas funções com alguns exemplos:
Função SQL LTRIM
A função LTRIM remove caracteres do início (lado esquerdo) de uma string especificada. Por exemplo:
DECLARE @String VARCHAR(26) = ' Aplicação ';
SELECT @String AS StringOriginal, LTRIM(@String) AS StringAposTRIM;
Neste exemplo, a função LTRIM remove os espaços à esquerda da string, resultando em “Aplicação” como saída.
Função SQL RTRIM
A função RTRIM remove caracteres do final (lado direito) de uma string especificada. Por exemplo:
DECLARE @String VARCHAR(26) = ' Aplicação ';
SELECT @String AS StringOriginal, RTRIM(@String) AS StringAposTRIM;
Neste exemplo, a função RTRIM remove os espaços à direita da string, resultando em ” Aplicação” como saída.
Função TRIM no SQL Server 2017
Antes do SQL Server 2017, as funções LTRIM e RTRIM tinham que ser usadas juntas para remover espaços tanto à esquerda quanto à direita. No entanto, com a introdução da função TRIM, isso agora pode ser feito com uma única função. Por exemplo:
DECLARE @String VARCHAR(26) = ' Aplicação ';
SELECT @String AS StringOriginal, TRIM(@String) AS StringAposTRIM;
Neste exemplo, a função TRIM remove tanto os espaços à esquerda quanto à direita da string, resultando em “Aplicação” como saída.
Usando a Função TRIM
A sintaxe da função TRIM é a seguinte:
TRIM([CaracteresParaRemover DE] string)
O parâmetro CaracteresParaRemover permite que você especifique os caracteres a serem removidos da string. Por padrão, o SQL Server remove espaços de ambos os lados da string. Vamos explorar alguns exemplos:
Remover Espaços à Esquerda e à Direita
DECLARE @String VARCHAR(24) = ' Aplicação ';
SELECT @String AS StringOriginal, TRIM(@String) AS StringAposTRIM;
Neste exemplo, a função TRIM remove tanto os espaços à esquerda quanto à direita da string, resultando em “Aplicação” como saída.
Remover Caracteres à Esquerda
DECLARE @String VARCHAR(24) = 'Aplicação';
SELECT @String AS StringOriginal, TRIM('On' DE @String) AS StringAposTRIM;
Neste exemplo, a função TRIM remove os caracteres “On” do lado esquerdo da string, resultando em “Aplicação” como saída.
Remover Caracteres à Esquerda (Múltiplos)
DECLARE @String VARCHAR(24) = 'Aplicação';
SELECT @String AS StringOriginal, TRIM('APP' DE @String) AS StringAposTRIM;
Neste exemplo, a função TRIM remove os caracteres “APP” do lado esquerdo da string, resultando em “licação” como saída.
Remover Caracteres à Esquerda e à Direita
DECLARE @String VARCHAR(24) = 'AplicaçãoA';
SELECT @String AS StringOriginal, TRIM('A' DE @String) AS StringAposTRIM;
Neste exemplo, a função TRIM remove os caracteres “A” tanto do lado esquerdo quanto do lado direito da string, resultando em “pplicatio” como saída.
Remover Caracteres à Esquerda e à Direita (Inexistentes)
DECLARE @String VARCHAR(24) = 'AplicaçãoA';
SELECT @String AS StringOriginal, TRIM('AC' DE @String) AS StringAposTRIM;
Neste exemplo, a função TRIM remove o caractere “A” tanto do lado esquerdo quanto do lado direito da string. No entanto, como o caractere “C” não existe na string, ele não é removido. A saída é “pplicaçãoA”.
Usando TRIM em Registros de Tabela
Além de usar a função TRIM em variáveis, ela também pode ser usada em registros de tabela. Por exemplo, para atualizar todos os registros na tabela “Funcionário” e remover os caracteres “Gerente” da coluna “Cargo”:
UPDATE [AdventureWorks2017].[RecursosHumanos].[Funcionário]
SET Cargo = TRIM('Gerente' DE 'Gerente de Pesquisa e Desenvolvimento');
Neste exemplo, a função TRIM remove os caracteres “Gerente” da coluna “Cargo” para todos os registros na tabela “Funcionário”.
No geral, a função TRIM do SQL fornece uma maneira conveniente de remover caracteres à esquerda e à direita de uma string. Seja usando o SQL Server 2017 ou uma versão anterior, entender e utilizar essas funções de string é essencial para o desenvolvimento eficiente do SQL.
Espero que você tenha achado este artigo útil. Se tiver alguma dúvida ou feedback, sinta-se à vontade para deixar um comentário abaixo.