当前位置:编程学习 > C#/ASP.NET >>

如何查询时间段?

SET @sql2 = @sql2+ ' and convert(char(10),a.train_endtime,120) between ''1996-03'' and ''2008-02'''
可以搜索到,为什么胜
if (@train_starttime<>'' or @train_endtime<>'')
SET @sql2 = @sql2+ ' and convert(char(10),a.train_endtime,120) between ''+convert(char(6),@train_startime)+'' and ''+convert(char(6),@train_endtime)+'''
就不以搜索到???
2.在数据库中.保存的时间为2006-5-1 上午3:20:00
如何让时间保存为2006-05-01 03:20,最好给一小段代码,谢谢各位了.
--------------------编程问答-------------------- if (@train_starttime<>'' or @train_endtime<>'')
---SET @sql2 = @sql2+ ' and a.train_startime  >''2007-5-4'' and a.train_endtime <''2007-6-4'''
可以查询到
但用下面这句就不行.不知为什么.
SET @sql2 = @sql2+ ' and a.train_startime > '+Convert(char(6),@train_starttime,120
)+'and a.train_endtime<'+Convert(char(6),@train_endtime,120)+''
--------------------编程问答-------------------- convert(char(10),a.train_endtime,120)
格式为120 
1、后来比较中convert(char(6),@train_startime) 默认格式为119 当然不行
还有- 也算一个字符 1996-03  这种格式也应该是char(7)
2、120就可以 在默认值里设置一下
select convert(char(20),getdate(),120)


未测试  主观感觉  不对就不对把 呵呵
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,