我有一系列日期 2015-05-31 17:36:36.000000 至 2015-12-20 22:20:00.000000。
好吧,我希望在那段时间内获取每天17到19之间的行。当然,包括会议记录也很重要。
我的意思是,在每一天,如果一行的时间在17到20之间,我需要这样做。
我应该使用什么查询?
我用过
SELECT *
FROM (`orktape`)
WHERE STR_TO_DATE(timestamp, '%Y-%m-%d %H:%i:%s') >= '2015-05-31 17:36:36.000000'
AND STR_TO_DATE(timestamp, '%Y-%m-%d %H:%i:%s') < '2015-12-20 22:20:00.000000'
ORDER BY `timestamp` desc
但是它会产生2015-05-31 17:36:36.000000和2015-12-20 22:20:00.000000之间的所有行,其中包括2015-12-20 02:20:00.000000等行不正确的结果。
感谢。
答案 0 :(得分:1)
您可以在......范围内选择...
SELECT * FROM orktape WHERE HOUR(mytimestamp) >= 17 AND HOUR(mytimestamp) < 19
不确定调用了什么时间戳列,我不会称之为时间戳,这可能会令人困惑。