TRIM do PostgreSQL
A função `TRIM` do PostgreSQL é uma função de string utilizada para remover caracteres iniciais e/ou finais especificados de uma string. Por padrão, ele remove os espaços em branco do início e do fim de uma cadeia de caracteres.
Uso
A função `TRIM` é usada para limpar cadeias de caracteres, removendo caracteres indesejados que podem afetar a consistência e a formatação dos dados. É particularmente útil ao processar a entrada de dados em que espaços extras ou caracteres específicos precisam ser eliminados.
TRIM([BOTH | LEADING | TRAILING] [characters] FROM string);
Nessa sintaxe, `BOTH`, `LEADING` ou `TRAILING` especificam o(s) lado(s) da cadeia de caracteres a ser(em) aparado(s). Se nenhuma direção for especificada, será assumido `BOTH`. Se o argumento `characters` não for fornecido, a função terá como padrão o corte de espaços. `string` é a cadeia de caracteres de destino. Se o parâmetro `string` for NULL, a função retornará NULL.
Exemplos
1. Acabamento básico
SELECT TRIM(' hello ');
Este exemplo remove os espaços de ambas as extremidades da string `' hello '`, resultando em `'hello'`.
2. Aparar caracteres específicos
SELECT TRIM(BOTH 'x' FROM 'xxxhelloxxx');
Aqui, a função `TRIM` remove 'x' de ambas as extremidades da string, retornando `'hello'`.
3. Guarnição principal e final
SELECT TRIM(LEADING 'a' FROM 'aaabca');
Esse exemplo remove os caracteres 'a' iniciais de `'aaabca'`, resultando em `'bca'`.
4. Aparar sem argumentos
SELECT TRIM(' example ');
Este exemplo demonstra o comportamento padrão da função `TRIM`, removendo os espaços em branco de ambas as extremidades da string, resultando em `'example'`.
Dicas e práticas recomendadas
- Padrão para espaços em branco. Use `TRIM` sem especificar caracteres se você precisar remover apenas espaços em branco.
- Especifique a direção com sabedoria. Use `LEADING` ou `TRAILING` quando você precisar cortar apenas um lado da corda para obter eficiência.
- Combine com outras funções. Use `TRIM` em conjunto com outras funções de cadeia de caracteres, como `UPPER` ou `LOWER`, para um processamento de cadeia de caracteres mais complexo.
- Considere a uniformidade dos dados. Apare regularmente os dados de entrada para garantir a uniformidade ao armazenar ou comparar cadeias de caracteres em um banco de dados.
- Entenda o comportamento NULL. Lembre-se de que, se o parâmetro `string` for NULL, o resultado será NULL.
- Considerações sobre o desempenho. Esteja atento ao possível impacto no desempenho ao usar o `TRIM` em grandes conjuntos de dados ou consultas complexas.
- Compare com funções semelhantes. Considere como `TRIM` difere de `LTRIM` ou `RTRIM`, que removem apenas os caracteres da extremidade esquerda ou direita, respectivamente.