none
Tratamento de dados do tipo hora com dois digitos RRS feed

  • Pergunta

  • Olá Senhores(as),
    Eu tenho um Select e gostaria que ele me retornasse 00:00:00 ao invés de 0:0:0.

    select convert(varchar(2),datepart(hh,tempoutil) + ':' + convert(varchar(2),datepart(mi,tempoutil)) + ':' + convert(varchar(2),datepart(ss,tempoutil)) as TEMPOUTIL from chamado
    Da forma que esta, esta retornando 12:3:15 ao invés 12:03:15
     
    Obrigado pela atenção de todos.
    terça-feira, 4 de junho de 2013 20:31

Todas as Respostas

  • olá Fabricio,

    Por favor, da uma olhadinha no link provavelmente irá te ajudar

    http://msdn.microsoft.com/pt-br/library/ms174420(v=sql.105).aspx

    Abraço


    Wellinghton Pimentel Se esta sugestão for útil, por favor, classifique-a como útil. Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.

    terça-feira, 4 de junho de 2013 20:43
  • Fabricio, complementando o que o Wellinghton disse o problema é que o retorno da função datepart é do tipo int, logo todo zero a esquerda vai ser ignorado, o que voce poderia fazer poderia ser um case para validar se ha somente 1 digito, se houver adicionaria 1 zero a esquerda.

    Alexandre Matayosi Conde Mauricio.

    terça-feira, 4 de junho de 2013 20:47
  • Fabrício,

    Faça assim...
    SELECT CONVERT(VARCHAR(8), tempoutil, 108) AS TEMPOUTIL
    FROM chamado
    

    Abçs
    quarta-feira, 5 de junho de 2013 11:30
  • Obrigado pela ajuda de todos.
    O campo tempo util é float.

    SELECT convert(varchar(max),cast(tempoutil as smalldatetime),108)  AS TEMPOUTIL FROM chamado

    Resolvido.
    Obrigado.

    quarta-feira, 5 de junho de 2013 11:39
  • Oá fabricio, por favor, quando possível, marque como resposta para que possamos ajudar outros usuários.

    Muito obrigado.

    Abração


    Wellinghton Pimentel Se esta sugestão for útil, por favor, classifique-a como útil. Se ela lhe ajudar a resolver o problema, por favor, marque-a como Resposta.

    quarta-feira, 5 de junho de 2013 14:22