mssql数据库一张表中有一列为datetime,截取时间。
datetime
20100908T04400000 --- 即2010年09月08号04点40分00秒00
20100908T04400000
20101008T05400000
20101109T06440000
20101115T15572900
20101209T10500000
20110909T10500000
20120909T10500000
现在要查询在2010年09月08日04点40分00到2010年12月09日10点50分00之间的数据
请问怎么写sql语句。
注:那个T是在添加时的格式不能改变了。
在查询的时候是根据控件输入时间的一个时间段
sql语句请大神指教。。。
------解决方案--------------------select *
from tablename
where cast(substring([datetime],0,5)+'-'+substring([datetime],6,2)+'-'+substring([datetime],7,2)+' '+substring([datetime],10,2)+':'+substring([datetime],12,2)+':'+substring([datetime],14,2)+'.'+substring([datetime],16,2) as datetime) between '2010-09-08 04:40:00' and '2010-12-09 10:50:00'
------解决方案--------------------between '20100908T044000' and '20101209T105000'
------解决方案--------------------只要前端传入参数的时候能把:2010年09月08日04点40分00到2010年12月09日10点50分00
换成20100908T044000这样的格式,那么直接between and就够了。
------解决方案--------------------select * from test1
where dt between '20100908T04400000' and '20101008T05400000'