MySQL选择:WHERE(现在时间)= BETWEEN tablevalue和tablevalue

Chr*_*ris 7 mysql time select where-clause

我正在寻找一种方法来选择当前时间在行中两个设定值之间的行.我已经设置了一个包含3列的表,其中2列包含时间戳(HH:MM:SS),另一列包含字符串.有没有办法让我得到与当前时间相对应的字符串?以更抽象的方式:

SELECT String FROM TableName WHERE(当前时间)BETWEEN(下限时间值)AND(上限时间值);

替代文字

所以基本上,根据当前时间,我的脚本应该输出正确的字符串.

我该怎么做?谢谢!

Qua*_*noi 5

MySQL,时间戳是一个令人困惑的词.

如果他们是lowerlimitupperlimitTIME列来自00:00:0023: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
Run Code Online (Sandbox Code Playgroud)

这将正确处理午夜过渡.