none
SUBSTRING, selecionando caracteres. RRS feed

  • Pergunta

  • pessoal queria saber como fazer para obter esse retorno.

    Ex.:

    201301------131

    201302------132

    200902------092

    ou seja, desses números, 123456 quero apenas 346

    na consulta   

    select SUBSTRING(idPeriodoIngresso, 4, 3) as idPeriodo from escola.dbo.alunos

    só me retorna os 3 últimos caracteres.

    segunda-feira, 12 de agosto de 2013 18:15

Respostas

  • Boa tarde,

    Wellington, a coluna que contem esses valores é de que tipo?

    E se o penúltimo dígito for diferente de 0?

    A princípio você pode experimentar dessa forma:

    select SUBSTRING(idPeriodoIngresso, 3, 2) + RIGHT(idPeriodoIngresso, 1) as idPeriodo 
    from escola.dbo.alunos

    Espero que ajude.


    Assinatura: http://www.imoveisemexposicao.com.br

    • Marcado como Resposta Giovani Cr quarta-feira, 11 de setembro de 2013 12:22
    segunda-feira, 12 de agosto de 2013 18:23
  • Nesse caso você precisa realizar 2 SUBSTRING e concatenar o resultado deles:

    DECLARE @TESTE VARCHAR(6)='123456'
    SELECT SUBSTRING(@TESTE,3,2)+SUBSTRING(@TESTE,6,1)

    No seu caso, seria:

    select SUBSTRING(idPeriodoIngresso,3,2)+SUBSTRING(idPeriodoIngresso,6,1) as idPeriodo from escola.dbo.alunos

    segunda-feira, 12 de agosto de 2013 18:23

Todas as Respostas

  • Boa tarde,

    Wellington, a coluna que contem esses valores é de que tipo?

    E se o penúltimo dígito for diferente de 0?

    A princípio você pode experimentar dessa forma:

    select SUBSTRING(idPeriodoIngresso, 3, 2) + RIGHT(idPeriodoIngresso, 1) as idPeriodo 
    from escola.dbo.alunos

    Espero que ajude.


    Assinatura: http://www.imoveisemexposicao.com.br

    • Marcado como Resposta Giovani Cr quarta-feira, 11 de setembro de 2013 12:22
    segunda-feira, 12 de agosto de 2013 18:23
  • Nesse caso você precisa realizar 2 SUBSTRING e concatenar o resultado deles:

    DECLARE @TESTE VARCHAR(6)='123456'
    SELECT SUBSTRING(@TESTE,3,2)+SUBSTRING(@TESTE,6,1)

    No seu caso, seria:

    select SUBSTRING(idPeriodoIngresso,3,2)+SUBSTRING(idPeriodoIngresso,6,1) as idPeriodo from escola.dbo.alunos

    segunda-feira, 12 de agosto de 2013 18:23