Usuário com melhor resposta
Selecionar dados parcial de uma String

Pergunta
-
Senhore(a)s boa tarde!! Tenho uma tabela onde de uma String preciso retirar duas informações, segue abaixo exemplo:
de para para
19091-2 1901 2
18475-4 18475 4
1555-3 1555 3Preciso selecionar tudo o que tem antes do hifem e tudo que tem depois do hifem
Certo da atenção devida
Marcelo Nogueira
Respostas
-
Se não quiser usar Substring como o meu exemplo anterior, pode usar somente o LEFT e o RIGHT:
Sufixo com 1 caracter:
select LEFT(Campo, len(Campo)-2) Prefixo, RIGHT(Campo,1) Sufixo
Sufixo com mais de 1 caracter:
select LEFT(Campo, CHARINDEX('-',Campo)-1) Prefixo, RIGHT(Campo, len(Campo) - CHARINDEX('-',Campo)) Sufixo
Ozimar
Ozimar Henrique http://ozimar.com- Editado Ozimar Henrique quarta-feira, 18 de janeiro de 2012 15:38
- Marcado como Resposta Marcelinho FaberCode quarta-feira, 18 de janeiro de 2012 16:06
Todas as Respostas
-
Se o Sufixo só terá 1 caracter pode usar o comando: select substring(Campo, 1, len(Campo)-2) Prefixo, Right(Campo,1) SufixoCaso seja de tamanho variado:select substring(Campo, 1,CHARINDEX('-',Campo)-1) Prefixo, substring(Campo, CHARINDEX('-',Campo)+1, len(Campo)) SufixoAbraçosOzimar
Ozimar Henrique http://ozimar.com -
Se não quiser usar Substring como o meu exemplo anterior, pode usar somente o LEFT e o RIGHT:
Sufixo com 1 caracter:
select LEFT(Campo, len(Campo)-2) Prefixo, RIGHT(Campo,1) Sufixo
Sufixo com mais de 1 caracter:
select LEFT(Campo, CHARINDEX('-',Campo)-1) Prefixo, RIGHT(Campo, len(Campo) - CHARINDEX('-',Campo)) Sufixo
Ozimar
Ozimar Henrique http://ozimar.com- Editado Ozimar Henrique quarta-feira, 18 de janeiro de 2012 15:38
- Marcado como Resposta Marcelinho FaberCode quarta-feira, 18 de janeiro de 2012 16:06
-