Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia pessoal,
Tenho uma tabela com tempos parciais em horas e minutos, e preciso que cada vez que a soma desse tempo seja 8:48hrs, considere um dia completo.
Pra isso pensei em fazer:
$minutos = 8.48 * 60; # = 508,8
$total_minutos = $soma_tabela * 60;
$total_dias = ((integer) ($total_minutos / $minutos));
Que tipo deve ser o campo de horas da tabela para que eu possa fazer esse calculo? Formato digitado será HH:MM.
Obrigada
Mas o time seria HH:MM:SS né?
Ai como eu faço para transformar isso em valor para pode calcular?
OLá aline_
Realmente, quando não inserido os segundos o banco automaticamente completa.
Como você precisa somar, com o auxílio das funções TIME_TO_SEC para quando o campo estiver em HH:MM:SS você transforma em inteiros, depois de realizar seu calculo, utilize o SEC_TO_TIME para formar em HH:MM:SS.
Abraços.
_ _
Fabiano Abreu
Papo Sql - Um blog com tutoriais, dicas e truques sobre SQL
aline
se você utilizar time o mysql possui um limite de 838:59:59 horas, se seu campo for ultrapassar isso(ou se somando ultrapassa isso, como o total de horas trabalhadas por alguem) considere salvar os campos ja em minutos num campo integer
Fabiano, deu tudo certo com o tipo time, usando time_to_sec para o cálculo.
Giesta, esse campo é para faltas parciais dentro de um ano. Não deve estourar o limite.
Obrigada meninos!
Olá aline_
Use o tipo time.
Abraços.
_ _
Fabiano Abreu
Papo Sql - Um blog com tutoriais, dicas e truques sobre SQL