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
FROMpalavra-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' |