Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

karieht

Conseguir parte de uma string

Recommended Posts

Tenho uma tabela de localidade. 2 exemplos de conteúdo : VRDB/VITORIA TUBARAO_EDIFICIO BELESA e VRDB/VITORIA TUBARAO/ANDAR_TERREOEu preciso que seja mostrado a localidade somente : sem a primeira parte (VRDB/) e somente o nome da localidade que no exemplo citado acima seria VITORIA TUBARAO.Me passaram o select : substring(loc.location_full_name, charindex('/', loc.location_full_name+'/')+1, charindex('_', loc.location_full_name+'/_')-charindex('/', isnull(loc.location_full_name,'/_')) -1) as location_nameTudo que vem após o nome da localidade (depto, prédio, andar) deve ser desconsideradoNo select que me passaram acima, dá certo para o primeiro exemplo, mas para o segundo não (me aparece a informação/ANDAR além da localidade ).Este select está desconsiderando após o nome da localidade, somente o que é underline, o que é barra não..Obrigada !

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema destes exemplos que você postou é que não existe padronização em relação ao uso dos separadores de início "/" e de término das strings.A query que você colocou despreza tudo entre "/" e o "_", por isto funciona para o primeiro exemplo... VRDB/VITORIA TUBARAO_EDIFICIO BELESA = VITORIA TUBARAOE não funciona para o segundo... VRDB/VITORIA TUBARAO/ANDAR_TERREO = VITORIA TUBARAO/ANDARAcho melhor você tratar o problema em partes... 1. Fazer primeiro o tratamento de início da string (que parece estar mais padronizado, pois parece ser possível selecionar apenas a partir da primeira "/" ) 2. Depois tentar tratar a parte final da string (da direita para a esquerda)Caso não exista uma padrão entre os separadores da string, vai ficar difícil !!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.