Selecione o tempo entre duas vezes o mysql
Eu tenho que verificar se um horário específico é entre dois horários (horário de abertura e fechamento).
Os horários de abertura e fechamento são salvos em um banco de dados como "início" e "final" relacionados a um ID do dia da semana e não a uma data.
Portanto, meu problema é que eu tenho dois casos diferentes. O primeiro caso é que o horário de término é maior que o horário de início, como se final = 19: 00: 00 e início = 09: 00: 00
mas também pode ser final = 06: 00: 00 e início = 20: 00: 00
Então, qual é uma maneira de desempenho para verificar se o tempo está entre as duas vezes?
Meu sql fica assim:
SELECT *
FROM opening
WHERE weekday_id = :weekday
AND start <= :time
AND end >= :time