【发布时间】:2011-12-28 10:24:35
【问题描述】:
我想根据匹配年份选择多条记录,例如在表格选项卡中
其中列是[id] int、[name] varchar、[bookyear] datetime
我想选择年份为 2009 年的所有记录。
以下查询给出 0 个结果:
SELECT [ACCNO]
,[Roll No]
,[IssueDate]
,[DueDate]
FROM [test1].[dbo].[IssueHis$]
where [IssueDate] between 12-12-2004 and 1-01-2010
【问题讨论】:
-
如何同时标记mysql和sql-server?
-
查看 DATEPART 函数 - msdn.microsoft.com/en-us/library/ms174420.aspx - 然后您可以执行 SELECT * FROM tab WHERE DATEPART(year, IssueDate) BETWEEN 2005 AND 2010 例如。也有很多关于 SO 的示例,请参阅 stackoverflow.com/questions/5043920/…
-
我整理了@rene 的标签,因为很明显问题是关于 SQL Server 的。
-
@dash:您不会在 SQL Server 中的列上放置函数。它使索引使用无效
-
@user1074474:为什么说“2009 年”然后是“12-12-2004”?
标签: sql sql-server sql-server-2008 datetime