我有一个简单的mysql表,其中包含2个时间字段,即from和to。
我有2条记录,即:
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
它不返回任何内容,应该返回第二条记录。
有人可以帮助我吗?
谢谢。
答案 0 :(得分:0)
在之间使用时,您需要先指定范围,例如先从小到大,然后再从大
SELECT * FROM prices WHERE '18:30' BETWEEN pric_to AND pric_from LIMIT 1
答案 1 :(得分:0)
@ fa06提到
BETWEEN [value] and [larger value]
我认为您打算使用DateTime值而不只是日期。那么您的“实现价值”将是第二天,从而变得更大,然后是“实现价值”。
答案 2 :(得分:0)
我认为我需要其中的另一条记录,并稍作改动,所以最后我最终像这样:
来自|至 07:00:00 | 17:59:59 18:00:00 | 11:59:59 00:00:00 | 06:59:59
这成功了。
谢谢。