MSSQL WHERE日期对象的函数

时间:2013-11-04 14:52:46

标签: c# database stored-procedures

我有一个包含列id(int)和列HolidayDate(Date)的表格,我希望在列表中获取特定月份的假期。当我得到所有假期的列表时,我知道如何在代码中这样做。

但我想从数据库(MSSQL Express 2010)中获取已过滤的列表。当我给存储过程指定年份和月份时,有没有办法过滤存储过程中的Date-Object

例如,这不起作用:

SELECT        Id, HolidayDate
FROM            dbo.Holiday
WHERE        (HolidayDate= '*.11.2013')

(因为从* .11.2013转换为Date-Object不起作用)

......而且这项工作:

SELECT        Id, HolidayDate
FROM            dbo.Holiday
WHERE        (HolidayDate= '22.11.2013')

我只是不想加载所有假期的完整列表并在我的程序中过滤它们

1 个答案:

答案 0 :(得分:6)

这将在特定月份内完成您的假期:

SELECT        Id, HolidayDate
FROM            dbo.Holiday
WHERE         year(holidaydate) = 2013 and month(HolidayDate) = 11