2014-03-03 46 views
0

我正在使用Microsoft SQL Server 2000(版本8);我想查询并返回给定月份的所有记录。T-SQL返回所有给定月份

我会提供月份和年份,并会得到每个记录的日期落在该时间段内。

我希望有一种方式比我在谷歌上看到的更优雅,通过循环或确定最后一天。

回答

0

这是最简单的方法,但不是性能高效。因为此查询不会使用DateColumn上定义的任何索引。

SELECT * 
FROM Table_Name 
WHERE MONTH(DateColumn) = 12 --<-- Month December 
AND YEAR(DateColumn) = 2013 --<-- Year 2013 

更好的方法将是这样......

例如,如果你希望所有在2013年6月,你可以做这样的事情的记录.....

SELECT * 
FROM DateColumn >= '20130601' 
AND DateColumn <= '20130630' 
+0

THANK YOU聪明的人。当计时器到期时,我会在8分钟内接受答案:) –

+0

@XiVix没有问题,很高兴它帮助:) –