如何比较mysql中from和to时间字段之间的时间?

jtoj6r0c  于 2021-06-21  发布在  Mysql
关注(0)|答案(3)|浏览(545)

我有一个简单的mysql表,有两个时间字段,即from和to。
我有两个记录,即:

from   |    to 
07:00:00 | 17:59:59 
18:00:00 | 06:59:59

如果我执行以下查询:

SELECT * FROM prices WHERE '11:06' BETWEEN pric_from AND pric_to LIMIT 1

上面的查询正在返回正确的记录。
但如果我运行以下查询:

SELECT * FROM prices WHERE '18:30' BETWEEN pric_from AND pric_to LIMIT 1

它没有返回任何东西,因为它应该返回第二个记录。
有人能帮我吗?
谢谢。

9avjhtql

9avjhtql1#

@fa06提到

BETWEEN [value] and [larger value]

我想你的意思是使用datetime值而不仅仅是date。那么你的“价值观”将是第二天,因此更大,然后你的“价值观”。

roejwanj

roejwanj2#

我相信我需要另一张唱片,并对另一张唱片做了一些改动,所以最后我的结局是这样的:
从|到07:00:00 | 17:59:59 18:00:00 | 11:59:59 00:00:00 | 06:59:59
这就成功了。
谢谢。

nnt7mjpx

nnt7mjpx3#

对于使用between,需要按照先小后大的顺序指定范围

SELECT * FROM prices WHERE '18:30' BETWEEN  pric_to AND pric_from LIMIT 1

相关问题