2012-03-03 223 views
0

谁能帮助我,我面临着一些问题,日期时间函数在SQLSQL日期时间问题

看到我对日期一些记录,从2012年1月30日,只02/21/2012,我需要以获取这两个日期之间的数据,如果我将2012年1月1日作为开始日期并将2012年12月1日作为结束日期,它将正确显示所有数据,但如果我将2012年1月30日作为开始日期并且2012年2月21日作为结束日期,它只显示在2012年1月30日和2012年2月21日的两个记录......发生了什么事其他记录,我怎么能解决这个问题..... ....提前致谢

+3

,你能否告诉我们,失败对你的SQL?也许数据?你没有真正提供足够的信息给任何人能够帮助你。 – 2012-03-03 06:40:03

+0

在你的SQL之间使用 – 2012-03-03 06:40:45

+0

实际上我手动编辑了一些记录,在那条记录中,我给出了日期列的值为2012-01-30,并且它的值为2012-01-30 00:00:00:00 ,之后,当我从我的编码中添加记录时,日期列被存储为2012-01-30 16:44:54.147 .......我认为问题与日期之后的时间格式有关.... .. – shanish 2012-03-03 08:13:55

回答

0

根据您的表结构,你可以做

select * from your_table 
where date_column between '2012-01-30' and '2012-02-12' 

select * from your_table 
where start_date >= '2012-01-30' 
and end_date <= '2012-02-12' 
+0

看到我在我的表中有3列... ItemName,LineTotal和CreatedDate,我需要按名称和日期分组这个记录,因为我需要得到明智的日期记录,所以我写了查询为 SELECT ItemName,COUNT(ItemName)AS Quantity,SUM(LineTotal)AS Amount,CONVERT(varchar(10),CreatedDate,103)AS CreatedDate FROM table_name WHERE CreatedDate BETWEEN'2012-01-30'AND'2012-02-21 ' GROUP BY ItemName,CONVERT(varchar(10),Create dDate,103) 当我执行这个查询时,它只显示2条记录,实际上我有超过10条记录在这个日期..如何我们可以将时间部分分组 – shanish 2012-03-03 08:37:16