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

asp怎样通过日期字段查询某一月的所有记录 急啊 好心高手帮帮菜鸟啊
现在日期的输入方式是:在一个文本框里直接输入   或者用一个日历来选择
日期的格式:2007-12-17
目前用的方法是   select   *   form   a   where   date   like   '% "date "% '
但是用文本框输入时   输入2007可以查询   输入12可以查询   输入17也可以查询
但是输入2007-12查询不到值   为什么呢
 
或者根据日期的月份做一个统计   该怎么实现呢

还有其他的方法吗

各位高手赐教阿


------解决方案--------------------
用substring试试.
------解决方案--------------------
--try

select * from a where convert(char(7), date, 120)= '2007-01 '
------解决方案--------------------
sql= "select * form a where convert(varchar(10),date,120) = ' " & date & " ' "

根据日期的月份做一个统计
select convert(varchar(7),date,120) as 月份,sum(data) as 数量
from tablename
group by convert(varchar(7),date,120)
得到的结果类似与
月份 数量
2006-12 100
2007-01 50
2007-02 150
....
------解决方案--------------------
輸入日期查詢當月數據?輸入的日期應該規範格式.(比如用正則表達式)


"select * from T
where convert(char(06),[date],112)=convert(char(06),convert(datetime, ' "+date+ " '),112) "
------解决方案--------------------
日期查询应该弄年月日三个输入框,或者在一个输入框中输入完整的格式比较好吧。
目前这样在一个文本框中随便输入年月日中的任意部分有些乱。。。。
------解决方案--------------------
--try


select * from a where charindex( '2007 ', convert(char(8), date, 112))> 0
select * from a where charindex( '200701 ', convert(char(8), date, 112))> 0
select * from a where charindex( '20070115 ', convert(char(8), date, 112))> 0