minutos em horas
Tenho um campo inteiro, em uma tabela do sql server, onde é digitado um valor em minutos...
Preciso converter estes minutos em horas, e colocar no formato hh:mm
Exemplo :
509 minutos = 08:29
212 minutos = 3:32
:?: :roll:
Preciso converter estes minutos em horas, e colocar no formato hh:mm
Exemplo :
509 minutos = 08:29
212 minutos = 3:32
:?: :roll:
Arc
Curtidas 0
Respostas
Massuda
18/07/2005
Preciso converter estes minutos em horas, e colocar no formato hh:mm...
Nesse caso:horas = total_de_minutos div 60;
minutos = total_de_minutos mod 60;
daí ficaria algo assim:
var TotalDeMinutos: Integer; S: string; ... S := Format(´¬d:¬02.2d´, [ TotalDeMinutos div 60, TotalDeMinutos mod 60 ]);
GOSTEI 0
Arc
18/07/2005
Eu preciso fazer isso em um SELECT :wink:
GOSTEI 0
Biffi
18/07/2005
Acredito que vc precise de mais de um cálculo para fazer a conversão...
Divida o valor de minutos por 60 e o resto da divisão será o valor em minutos.
509 / 60 = 8 e sobram 29
509 div 60 = 8
509 mod 60 = 29
Espero não ter chovido no molhado...
Valew
Divida o valor de minutos por 60 e o resto da divisão será o valor em minutos.
509 / 60 = 8 e sobram 29
509 div 60 = 8
509 mod 60 = 29
Espero não ter chovido no molhado...
Valew
GOSTEI 0
Arc
18/07/2005
Preciso fazer realmente em um Select, só não quero fazer gambiarras
:roll:
:roll:
GOSTEI 0
Rjun
18/07/2005
Acho que não tem como você fazer isso em um select. O que você pode fazer é criar uma função no SQL Server que faça a conversão e retorne uma string com o que você quer exibir. Ai você pode utilizar a função dentro do seu select.
GOSTEI 0
Rjun
18/07/2005
Bom, acabei de fazer um teste, e acho q dá pra fazer assim :
Veja se funciona. E não esquece de dar o retorno.
select cast (minutos / 60 as varchar) + ´:´ + cast (minutos - ((minutos / 60) * 60) as varchar)
Veja se funciona. E não esquece de dar o retorno.
GOSTEI 0
Fabiana Santos
18/07/2005
A solução apresentada por RJUN me atendeu... Também estava precisando converter minutos em horas e não gostaria de criar uma função no banco. Muito obrigada!
GOSTEI 0
Everton Santos
18/07/2005
SE FOR O MYSQL FICA ASSIM
SELECT CONCAT((212 DIV 60),':',ROUND(((212/60) - (212 DIV 60)) * 100,0))
RETORNA 3:53
SELECT CONCAT((212 DIV 60),':',ROUND(((212/60) - (212 DIV 60)) * 100,0))
RETORNA 3:53
GOSTEI 0
Everton Santos
18/07/2005
ONDE 212 É O SEU CAMPO
GOSTEI 0