Jump to content
Fórum Script Brasil
  • 0

Calcular valor total de bônus mediante tempo de horas trabalhadas


Nering

Question

Salve galera.

Estou com um probleminha.

Estou desenvolvendo uma aplicação que mantém controle de banco de horas, com alguns serviços onde são pagos bônus das horas trabalhadas em cliente.

O meu problema é o seguinte:

Preciso calcular o valor das horas mediante um determinado tempo, ex.:

*Valor Hora: 12,00

*Total de Horas Bonus: 01:45:00

Eu estava tentando o seguinte:

Select (total_horas*24)*vl_hora from ....

No excel funciona perfeitamente porém no postgres não estou conseguindo converter o campo total_horas para decimal e assim fazer o cálculo com o valor da hora...

Se alguém conseguir me dar um help eu agradeço...

Ps. Campo total_horas é do tipo time(6) without zone e o campo vl_hora é do tipo numeric(10,2)

Abraçoos

Edited by Nering
Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Se você quiser usar um tipo data para armazenar horas trabalhadas use o tipo interval:

create table t (total_horas interval);

insert into t (total_horas) values
('2 hours 27 minutes'),
('1:18:00')
;

select * from t;
 total_horas 
-------------
 02:27:00
 01:18:00
(2 rows)
Agora você pode extrair os segundos trabalhados usando a função extract:
select 
    total_horas, 
    extract(epoch from total_horas) as segundos,
    extract(epoch from total_horas) / 60 / 60 as horas,
    extract(epoch from total_horas) / 60 / 60 * 12.00 as valor
from t
;
 total_horas | segundos | horas | valor 
-------------+----------+-------+-------
 02:27:00    |     8820 |  2.45 |  29.4
 01:18:00    |     4680 |   1.3 |  15.6
(2 rows)

Edited by Kakao
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

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



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652.1k
×
×
  • Create New...