日期:2014-05-18  浏览次数:20489 次

带分钟的时间查询如何写?
我用的sql server2005,+delphi+windowsXP
数据如下:(只列出日期字段)

日期
2010-11-30 10:56:06
2010-11-30 10:56:45
2010-11-30 10:57:25
2010-11-30 11:01:41
2010-11-30 11:02:20
2010-11-30 11:03:00
2010-11-30 11:03:39
2010-11-30 11:04:19
2010-11-30 11:04:58
2010-11-30 11:17:35
2010-11-30 11:18:13
2010-11-30 11:18:53
2010-11-30 11:19:32
2010-11-30 11:20:11
2010-11-30 11:23:23
2010-11-30 11:32:16
2010-11-30 11:33:08
2010-11-30 11:33:42
2010-11-30 11:34:17
2010-11-30 11:34:51
2010-11-30 11:35:25
2010-11-30 11:35:59
2010-11-30 11:36:33
2010-11-30 11:37:08

以上只是一天中的一点点历史数据,我的需求是:
我想查询任意一个时间段的数据,而这个日期字段是wherer的条件,我该如何写

比如我要查找2011-11-30 11:32:00 到2011-11-30 11:35:00的另一个字段的值的和,我要如何写:
select sum(F1) as F1 from LBQ4000 where ????????不会写条件

值得注意的是:我这个日期条件在界面(UI)上有一个日期输入控件,还有一个时间输入控件,还有一个时间段(就是增加多少分钟),比如:日期+时间 and 日期+时间+时间段。
我不会sql的语法格式和具体写法,还有到底要用什么函数。请给出代码,谢谢。


------解决方案--------------------
select sum(F1) as F1 from LBQ4000 where 
dt between beTime and enTime
------解决方案--------------------
直接between就可以了
------解决方案--------------------
SQL code

select sum(F1) as F1 from LBQ4000 where 日期 between '2011-11-30 11:32:00' and '2011-11-30 11:35:00'

------解决方案--------------------
日期+时间 直接between就好
where dt between convert(datetime,'2011-11-30 11:32:00')and convert(datetime,'2011-11-30 11:35:00')
------解决方案--------------------
where dt between '2011-11-30 11:32:00' and '2011-11-30 11:35:00'
------解决方案--------------------
一样,between包含两端
------解决方案--------------------
MSSQL的帮助文档中有详细的实例
------解决方案--------------------
between是包含两端的,可能你的数据有问题,你要是+1了,以后的数据可能会出错