我想获得2个日期之间的行
以下是查询:
select
distinct Convert(varchar(09), [DateTime], 103)
from
StudentAttendance_FK
where
LecturerID = 5033 and
CourseID = 1004 and
SubjectID = 120 and
[DateTime] Between '3/8/2012' and '3/11/2012'
格式(MM / DD / YYYY)
示例值
3/8/2012 11:40:46 PM
3/8/2012 11:40:46 PM
3/9/2012 11:57:55 AM
3/9/2012 10:48:02 PM
3/10/2012 11:57:20 PM
查询未在这两个日期之间返回任何行。此查询中有任何更改吗?
谢谢你
阿贾伊。
答案 0 :(得分:4)
如果您使用的是103(d/m/y
),那么为什么您的where子句使用m/d/y
?您是否使用英国/加拿大地区设置?坚持使用标准的,明确的格式,例如yyyymmdd
,您将获得更可预测的结果。
SELECT DISTINCT CONVERT(DATE, [DateTime])
FROM dbo.StudentAttendance_FK
WHERE LecturerID = 5033
AND CourseID = 1004
AND SubjectID = 120
AND [DateTime] >= '20120308' AND [DateTime] < '20120312';