Mysql
 sql >> Base de données >  >> RDS >> Mysql

MySQL Select:WHERE (time now) =BETWEEN tablevalue AND tablevalue

En MySQL , l'horodatage est un mot assez déroutant.

S'ils sont lowerlimit et upperlimit sont TIME colonnes de 00:00:00 à 23:59:59 :

SELECT  String
FROM    TableName
WHERE   CURTIME() BETWEEN lowerlimit AND upperlimit
        OR CURTIME() BETWEEN SUBTIME(upperlimit, '24:00:00') AND lowerlimit
        OR SUBTIME(CURTIME(), '24:00:00') BETWEEN SUBTIME(upperlimit, '24:00:00') AND lowerlimit

Cela gérera correctement les transitions de minuit.