选择在给定日期间隔内的日期

时间:2013-06-11 09:07:49

标签: mysql sql

我有一个日期表,并希望选择在给定日期的1.5小时间隔内的日期。 例如:

-- '2013-06-11 18:40' is the given date, and I want all dates that are 
-- inside +/- 1.5 hour interval
SELECT datum 
FROM table 
WHERE date(datum) > date( date_sub( '2013-06-11 18:40', interval 1.5 hour ) )
AND date(datum) < date( date_add( '2013-06-11 18:40', interval 1.5 hour ) )

2 个答案:

答案 0 :(得分:2)

MySQL date function获取date的{​​{1}}部分。当你在寻找3小时的间隔时,这是不可取的:)

尝试:

datetime

答案 1 :(得分:2)

我使用整数分钟而不是小时加上删除DATE功能,正如Andomar建议的那样:

SELECT datum 
FROM table 
WHERE 
datum > date( date_sub( '2013-06-11 18:40', interval 90 MINUTE ) )
AND 
datum < date( date_add( '2013-06-11 18:40', interval 90 MINUTE ) )