Ir para conteúdo

Arquivado

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

hesmarjassi

Time Diff

Recommended Posts

Estou fazendo um select que preciso que me traga todos os registros de 4 horas atrás até a hora atual.O campo de referência são dois data e hora, no select abaixo estão concatenados, o problema é que está trazendo tudo de 4 horas atrás e preciso que ele traga apenas até a hora atual.

Exemplo agora é 10 horas , tem que vir todos os registros das 7 ás 10 e ele trás registros além de das 10 horas , traz das 11 horas do dia seguinte, etc.

 

Segue abaixo o código

SELECT * FROM agendamento_fila_espera fila 

where sec_to_time(time_to_sec(timediff(NOW(),(CAST(CONCAT_WS(' ',dt_prev,hr_prev)as DATETIME)))))< '04:00:00'

Acredito ser algum parâmetro referente ao now, se alguém puder ajudar agradeço

Compartilhar este post


Link para o post
Compartilhar em outros sites
2 horas atrás, hesmarjassi disse:

Exemplo agora é 10 horas , tem que vir todos os registros das 7 ás 10 e ele trás registros além de das 10 horas , traz das 11 horas do dia seguinte, etc.

 

Qual o tipo de dados dos campos dt_prev e hr_prev?

Compartilhar este post


Link para o post
Compartilhar em outros sites

dt_prev = date

hr_prev = time

 

Não sei se ajuda, mas eu uso em outra página o código abaixo pra fazer a conta da diferença só que usando outro campo da tabela ao invés do NOW e funciona.

SELECT count(*) as qtd

	FROM agendamento_fila_espera fila 

	where sec_to_time(time_to_sec(timediff(dt_autorizado,(CAST(CONCAT_WS(' ',dt_prev,hr_prev) as DATETIME))))) < '00:10:00'

 

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.