sql >> Database teknologi >  >> RDS >> Mysql

Hvordan forespørger jeg mellem to tidsintervaller ved hjælp af MySQL?

Datatype TIME omfatter ikke viden om datointervaller (3:00 i din forespørgsel repræsenterer næste dags 3:00). Du skal selv klare dette:

SELECT columns 
FROM table
WHERE 
(cast('18:00' as time) <= cast('3:00' as time) and match_time between '18:00' AND '3:00') 
OR
(cast('18:00' as time) > cast('3:00' as time) and (match_time >= '18:00' or match_time<='3:00'));

Se db-fiddle .




  1. Mysql slette ældre dubletter

  2. Google Data Studio og AWS MySQL SSL-forbindelse

  3. Sådan viser du indekser oprettet til tabel i postgres

  4. Sådan aktiveres TimescaleDB på en eksisterende PostgreSQL-database