Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Stone_SP

Funções de data e hora - PHP e MySQL

Recommended Posts

Olá, tudo bem ?

 

No artigo 2362 “Funções de Data/Hora - Cálculo com datas”,

publicado no Imasters em 28/7/2004,

foram dados exemplos de subtarção no MySQL, onde pensei no seguinte:

 

mysql> SELECT DATE_SUB('2004-07-27 22:30:00', INTERVAL '0:20' HOUR_MINUTE);

 

Sendo assim o resultado seria mostrado no MySQL como:

 

+----------------------------------------------------------------+

| DATE_SUB('2004-07-27 22:30:00', INTERVAL '0:20 ' HOUR_MINUTE) |

+----------------------------------------------------------------+

| 2004-07-30 22:10:00 |

+----------------------------------------------------------------+

 

Certo ???

 

 

Pois bem, pelo que eu entendi, este resultado é apenas mostrado na tela,

e eu gostaria de saber como poderia fazer para armazenar este resultado final

em uma outra tabela.

 

Explico, não sou muito experiente no assunto, mas estou desenvolvendo

uma espécie de cartão de ponto online onde teríamos horário de entrada e saída de cada funcionário.

 

Vou tentar mostrar mais ou menos o que eu gostaria:

 

+--------------+------------+---------------------+

| Hora_entrada | Hora_saída | Quantidade_de_horas |

+--------------+------------+---------------------+

 

Preciso destes registros armazenados para depois ter como gerar relatórios.

 

Se puder me ajudar, agradeço.

 

Um abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Movido: PHP=>MySQL

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom vou te mostrar como foi implantado o ponto onde eu trabalho, q eu achei bem bolado....

 

cada vez que o peao passa o cracha na maquina q marca entrada e saida o sistema faz

 

insert into rh.ponto

values

('matricula_do_peao',now())

 

 

depois quando você acessa o sistema pra ver sua entrada e sua saida , o sistema faz

 

Select

matricula , min(hora) entrada , max(hora) saida, timediff(max(hora) - min(hora)) tempo_trabalhado

from rh.ponto

where matricula ='123'

group by DATE_FORMAT(hora,'%Y%m%d')

 

Obviamente ambas as colunas tem index e hora eh datetime e esse sistema nao funciona caso alguem vire a noite trabalhando, mas o q me surpreendeu mesmo nele foi a simplicidade e a capacidade de manipular as marcaçoes mesmo q alguem bate o ponto 30 vezes no mesmo dia

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.