Executando verificação de segurança...
1

Extração de Textos Baseado em Padrões com MySQL

Um problema muito comum ao realizarmos tratamento de dados é a necessidade de seprar em duas ou mais colunas trechos de um texto que está em uma coluna levando em consideração um delimitador específico.

Um exemplo seria um estrutura de dados onde temos a cidade e o estado separados por hífen em apenas uma coluna e queremos seprar estes valores em duas: uma apenas com o nome da cidade e outra com a sigla do estado.

FRUTAL-MG
SÃO CARLOS-SP
RECIFE-PE

Existem muitas formas de se fazer este tratamento de dados.
Em SQL vai depender do SGBD que você está usando.
Se for MySQL o SGBDs talvez seja mais fácil que em outros SGBDs.

Em MySQL existe uma função chamada SUBSTRING_INDEX. Ela recebe três parâmetros: a string, o delimitador e um índice. O índice pode ser um número inteiro positivo ou negativo. Se for positivo, a função retorna a parte da string antes do delimitador com o número de caracteres igual ao índice. Se o índice for negativo, a função retorna a parte da string após o delimitador com o número de caracteres igual ao índice.

O script abaixo faz a extração desejada:

SELECT
SUBSTRING_INDEX("FRUTAL-MG", '-', 1) AS CIDADE,
SUBSTRING_INDEX("FRUTAL-MG", '-', -1) AS ESTADO
FROM DUAL;

Conhecer as funções específicas dos SGBDs ajuda a resolver problemas de maneira mais enxuta.

Carregando publicação patrocinada...
1
Conteúdo excluído
1

Com certeza. No entanto existem casos que você está simplesmente lidando com dados de sistemas de terceiros e não tem ação sobre o sistema em questão para alteração. Nestes casos a opção é de fato tratar para ter um modelo de dados mais sustentável.