Stack Overflow em Português Asked by Everton on December 30, 2021
Queia ajuda para criar um delete
com where
caso o registro tenha sido inserido a mais de 5 minutos.
Tenho a tabela de marcação de ponto com as colunas:
Java
como String
a data)A ideia é:
delete from ponto where "registro foi inserido há mais de cinco minutos"
ou
delete from ponto where hora_atual - dt_ponto > cincoMinutos
Ou se há outra alternativa para esta solução.
Preciso disso pois é uma regra da empresa que uma pessoa só possa inserir registro de ponto a cada 5 minutos. Então, essa é uma tabela que serve como referência do tempo de marcação de ponto. Na aplicação java, eu faço uma verificação, se houver registro de matricula nessa tabela é porque o usuário registrou ponto a menos de cinco minutos e não pode inserir outro registro.
Use a função DATE_SUB() para calcular a diferença de 5 minutos data, assim:
WHERE dt_ponto <= DATE_SUB(NOW(), INTERVAL 5 MINUTE);
O INTERVAL
pode ser HOUR, MINUTE, etc, e como é DATE_SUB, vai subtrair 5 minutos, se fosse DATE_ADD, somaria.
Veja aqui um exemplo funcionando: https://www.db-fiddle.com/f/mrJ1axymtQmoHLhKJb2bXc/0
Answered by Ricardo Pontual on December 30, 2021
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP