Problema:
Você gostaria de remover espaços ou caracteres específicos do início e do fim de uma string.
Exemplo:
Nosso banco de dados tem uma tabela chamada
company
com dados em duas colunas:id
e name
. id | nome |
---|---|
1 | 'Supermercado' |
2 | 'Loja verde' |
3 | 'Livraria Moderna' |
Vamos cortar o nome de cada empresa para remover o espaço desnecessário no início e no final.
Solução:
Usaremos o
TRIM
função. Aqui está a consulta que você escreveria:SELECT TRIM(' ' FROM name) AS new_name FROM company;
Alternativamente, você pode usar a versão mais curta sem o
FROM
palavra-chave e espaço como caracteres a serem removidos; por padrão, TRIM
tratará isso como a remoção de espaços de uma string armazenada em uma determinada coluna ou expressão no argumento da função TRIM. SELECT TRIM(name) AS new_name FROM company;
Aqui está o resultado de ambas as consultas:
new_name |
---|
'Supermercado' |
'Loja verde' |
'Livraria Moderna' |
Discussão:
Use o
TRIM
função se você quiser cortar uma string em uma tabela. Esta função permite remover um caractere específico do início e do fim de uma string. Esta função recebe os seguintes argumentos:- O caractere que você deseja cortar da string, por padrão, é um espaço.
- O
FROM
palavra-chave, seguida pelo nome da coluna de string a ser cortada.
No nosso exemplo, isso se parece com:
TRIM(' ' FROM name)
O T-SQL permite também remover o espaço de outros caracteres apenas do início ou apenas do final de uma string.
O exemplo abaixo remove o espaço no final de cada empresa usando a função RTRIM().
SELECT RTRIM(name) AS new_name FROM company;
new_name |
---|
'Supermercado' |
'Loja verde' |
'Livraria Moderna' |
Mas também pode ser usado para cortar o espaço no início se você usar o
LTRIM
função em vez disso:SELECT LTRIM(name) AS new_name FROM company;
A consulta retorna o
name
coluna sem espaço no final. Observe que os espaços no início são deixados intocados. new_name |
---|
'Supermercado' |
'Loja verde' |
'Livraria Moderna' |