Ram*_*ngh 1 sql-server comparison date sql-server-2008
我使用以下方式比较两个日期:
if CONVERT(varchar(20), @ScheduleDate, 101) >= CONVERT(varchar(20), @CurrentDateTime, 101)
Run Code Online (Sandbox Code Playgroud)
这是本年度工作正常,但是当谈到在每年像一个日期是12/31/2012和1/1/2013那么它不工作.
请帮帮我,我该如何解决这个问题.
为什么要比较字符串?你可以比较日期
if @ScheduleDate >= @CurrentDateTime
Run Code Online (Sandbox Code Playgroud)
但如果你的日期包含时间,我通常会这样做
if convert(nvarchar(8), @ScheduleDate, 112) >= convert(nvarchar(8), @CurrentDateTime, 112)
Run Code Online (Sandbox Code Playgroud)
112日期时间格式为YYYYMMDD,因此它适用于比较日期