Como extrair parte de um texto em um campo SQL?

As funções SUBSTRING, LEFT e RIGHT no SQL permitem extrair partes específicas de um texto armazenado em uma coluna.

Como extrair parte de um texto em um campo SQL?

Manipular strings no SQL é essencial para formatar e extrair informações específicas. Funções como SUBSTRING(), LEFT() e RIGHT() ajudam a obter partes de um texto armazenado em colunas de bancos de dados.

Usando SUBSTRING para extrair parte de um texto

A função SUBSTRING() permite extrair uma parte do texto informando a posição inicial e a quantidade de caracteres desejada:

SELECT SUBSTRING(nome, 1, 5) AS nome_abreviado FROM clientes;

Aqui, os primeiros 5 caracteres da coluna nome serão extraídos.

Usando LEFT para obter os primeiros caracteres

Se quisermos pegar os n primeiros caracteres de um texto, usamos LEFT():

SELECT LEFT(nome, 3) AS iniciais FROM clientes;

Essa consulta retorna os 3 primeiros caracteres de cada nome.

Usando RIGHT para pegar os últimos caracteres

Se precisarmos dos últimos n caracteres, utilizamos RIGHT():

SELECT RIGHT(email, 10) AS dominio FROM usuarios;

Isso retorna os últimos 10 caracteres do e-mail, que podem incluir o domínio.

Extraindo partes de textos formatados

Se tivermos um campo armazenando CPF no formato 123.456.789-00 e quisermos pegar apenas os 3 primeiros números:

SELECT LEFT(cpf, 3) AS primeira_parte FROM clientes;

Isso retorna apenas os três primeiros números do CPF.

Cuidados ao extrair textos no SQL

  • Certifique-se de que a coluna contém valores padronizados para evitar erros na extração.
  • Algumas funções podem ter nomes diferentes dependendo do banco de dados (exemplo: SUBSTRING() no MySQL e SUBSTR() no Oracle e PostgreSQL).
  • Para textos grandes, prefira consultas otimizadas para evitar impactos na performance.

Extrair partes de textos em SQL é uma funcionalidade muito utilizada em sistemas que lidam com cadastros, logs e relatórios. Em bancos de dados que armazenam e-mails, por exemplo, é comum precisar separar o nome do usuário e o domínio. Outro exemplo comum é a extração de partes de documentos, como CPF e CNPJ, para exibições formatadas. Ao manipular textos grandes, é importante garantir que a consulta seja eficiente, pois a extração excessiva pode gerar lentidão em grandes volumes de dados.

Algumas aplicações:

  • Separação de nomes e sobrenomes em cadastros
  • Extração do domínio de e-mails
  • Formatação de números de documentos como CPF e CNPJ
  • Obtenção de partes específicas de strings padronizadas
  • Filtragem de informações para relatórios personalizados

Dicas para quem está começando

  • Use SUBSTRING(coluna, posição, tamanho) para extrair uma parte do texto
  • Utilize LEFT() para obter os primeiros caracteres e RIGHT() para os últimos
  • Verifique se os textos seguem um padrão antes de extrair informações
  • Para dados formatados, como CPF e telefones, sempre teste antes de executar em produção
  • Considere índices e otimizações ao aplicar essas funções em tabelas grandes

Contribuições de Fernando Albuquerque

Compartilhe este tutorial: Como extrair parte de um texto em um campo SQL?

Compartilhe este tutorial

Continue aprendendo:

Como converter um número em string no SQL?

As funções CAST e CONVERT permitem transformar números em strings no SQL, facilitando formatações e concatenações.

Tutorial anterior

Como substituir parte de um texto dentro de uma coluna no SQL?

A função REPLACE() no SQL permite substituir trechos de texto dentro de uma coluna, útil para corrigir informações e padronizar dados.

Próximo tutorial