sql >> Databasteknik >  >> RDS >> Mysql

Hur frågar jag mellan två tidsintervall med MySQL?

Datatyp TIME inkluderar inte kunskap om datumintervall (3:00 i din fråga representerar nästa dags 3:00). Du måste hantera detta själv:

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. Hur kan jag välja intilliggande rad i sql när den beställs av ett annat fält?

  2. Vad är skillnaden mellan Office 365 och Office 2016?

  3. Laravel:Hur lagrar jag data i json-format i databasen?

  4. PostgreSQL-fel:Fatalt:rollen användarnamn finns inte