Ir para conteúdo

Resultado De Uma Linha Dividido Em 2 Colunas


Posts Recomendados


  • Tópicos Que Criei:  21
  • Tópicos/Dia:  0.01
  • Meu Conteúdo:  55
  • Conteúdo/Dia:  0.02
  • Reputação:   0
  • Pontos/Conquistas:  485
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline
  • Dispositivo:  Windows

Boa tarde pessoal,

Estou precisando criar uma consulta que me traga os dados da tabela FLAN.HISTORICO, porém quero que o resultado da consulta seja dividido em duas colunas.

Todos os resultados que preciso, estão separados por um hífen "-".

EX: (WEMERSON ROCHA - 1º PARCELA VENDA DA UNIDADE 203 BL F)

resultado da consulta: COLUNA 1 / COLUNA 2

WEMERSON ROCHA / 1º PARCELA VENDA DA UNIDADE 203 BL F

Alguém pode me dar um Help ?

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  885
  • Tópicos/Dia:  0.13
  • Meu Conteúdo:  8.802
  • Conteúdo/Dia:  1.34
  • Reputação:   291
  • Pontos/Conquistas:  106.268
  • Conteúdo Resolvido:  0
  • Dias Ganho:  185
  • Status:  Offline
  • Idade:  51
  • Dispositivo:  Windows

O Hífen seria o separador para jogar parte em uma coluna e parte na outra? é isso? E caso apareça mais de um ? É possível, não?

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  885
  • Tópicos/Dia:  0.13
  • Meu Conteúdo:  8.802
  • Conteúdo/Dia:  1.34
  • Reputação:   291
  • Pontos/Conquistas:  106.268
  • Conteúdo Resolvido:  0
  • Dias Ganho:  185
  • Status:  Offline
  • Idade:  51
  • Dispositivo:  Windows

Bom, se for isso mesmo, segue um exemplo pra você usar ai que funciona :)

Select Nome,

CHARINDEX('-',Nome) Posição,

Left(Nome,CHARINDEX('-',Nome)-1) as Parte1,

Substring(Nome,CHARINDEX('-',Nome)+1,Len(Nome)) as Parte2
From GFilial

Como citei acima, caso tenha duas vezes a ocorrência do hífen, vai considerar a primeira...

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  21
  • Tópicos/Dia:  0.01
  • Meu Conteúdo:  55
  • Conteúdo/Dia:  0.02
  • Reputação:   0
  • Pontos/Conquistas:  485
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline
  • Dispositivo:  Windows

Obrigado Jair, porém não consegui adequar sua consulta à minha necessidade, poderia me ajudar ?

Os dados que preciso estão na coluna HISTORICO da tabela FLAN.

"Select HISTORICO

CHARINDEX('-',Nome) Posição,
Left(Nome,CHARINDEX('-',Nome)-1) as Parte1,
Substring(Nome,CHARINDEX('-',Nome)+1,Len(Nome)) as Parte2
From FLAN"
Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  38
  • Tópicos/Dia:  0.01
  • Meu Conteúdo:  438
  • Conteúdo/Dia:  0.08
  • Reputação:   12
  • Pontos/Conquistas:  2.592
  • Conteúdo Resolvido:  0
  • Dias Ganho:  9
  • Status:  Offline
  • Idade:  47
  • Dispositivo:  Windows

Boa tarde.

Basta trocar o campo...Onde está nome alterar para historico.

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  885
  • Tópicos/Dia:  0.13
  • Meu Conteúdo:  8.802
  • Conteúdo/Dia:  1.34
  • Reputação:   291
  • Pontos/Conquistas:  106.268
  • Conteúdo Resolvido:  0
  • Dias Ganho:  185
  • Status:  Offline
  • Idade:  51
  • Dispositivo:  Windows

Obrigado Jair, porém não consegui adequar sua consulta à minha necessidade, poderia me ajudar ?

Os dados que preciso estão na coluna HISTORICO da tabela FLAN.

"Select HISTORICO,

CHARINDEX('-',HISTORICO) Posição,
Left(Nome,CHARINDEX('-',HISTORICO)-1) as Parte1,
Substring(HISTORICO,CHARINDEX('-',HISTORICO)+1,Len(HISTORICO)) as Parte2
From FLAN"
Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  21
  • Tópicos/Dia:  0.01
  • Meu Conteúdo:  55
  • Conteúdo/Dia:  0.02
  • Reputação:   0
  • Pontos/Conquistas:  485
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline
  • Dispositivo:  Windows

"Select HISTORICO,

CHARINDEX('-',HISTORICO) Posição,

Left(HISTORICO,CHARINDEX('-',HISTORICO)-1) as Parte1,

Substring(HISTORICO,CHARINDEX('-',HISTORICO)+1,Len(HISTORICO)) as Parte2

From FLAN"


Essa consulta me retorna o seguinte erro:


Mensagem 537, Nível 16, Estado 2, Linha 1

Invalid length parameter passed to the LEFT or SUBSTRING function.


Link para comentar
Compartilhar em outros sites

  • 1 mês depois...

  • Tópicos Que Criei:  3
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  8
  • Conteúdo/Dia:  0.00
  • Reputação:   1
  • Pontos/Conquistas:  76
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline


SELECT FLAN.HISTORICO AS HISTORICO_COMPLETO,

charindex('-', FLAN.HISTORICO)

AS POSICAO_QUEBRA_CAMPO,

case

when charindex('-', FLAN.HISTORICO) > 0

then left(FLAN.HISTORICO, (charindex('-', FLAN.HISTORICO) - 1))

else FLAN.HISTORICO

end AS PARTE1,

case

when charindex('-', FLAN.HISTORICO) > 0

then right(FLAN.HISTORICO, len(FLAN.HISTORICO) - (charindex('-', FLAN.HISTORICO) + 1))

else ''

end AS PARTE2

FROM FLAN

Link para comentar
Compartilhar em outros sites

Participe da conversa

Você pode postar agora, e se registrar mais tarde. Se você tiver uma conta, faça o login agora para postar com sua conta.

Visitante
Responder esse tópico

×   Você colou conteúdo com formatação.   Remover formatação

  Only 75 emoji are allowed.

×   Seu link foi automaticamente inserido no corpo do post.   Exibir como um link

×   Seu conteúdo anterior foi restaurado.   Limpar conteúdo do editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Criar Novo...

Informação Importante

Usando este site, você concorda com nossos Termos de Uso e nossa Política de Privacidade.