PRINT 'The time is:'+CONVERT (VARCHAR(24),GETDATE(),120)+' now'
DECLARE @t1 DATETIME,@t2 DATETIME
SET @t1=DATEADD(hour,-4,GETDATE())
SET @t2='2011-09-01'
PRINT '@t1 是:'
PRINT @t1
PRINT '@t2 是:'
PRINT @t2
PRINT '所以:'
IF @t1>@t2 PRINT '@t1>@t2'
ELSE PRINT '@t1<@t2'运行以上SQL,得出如下message:
The time is:2011-09-01 14:07:09 now
@t1 是:
Sep 1 2011 10:07AM
@t2 是:
Sep 1 2011 12:00AM
所以:
@t1>@t2以上返回的message让我很疑惑,这种格式@t2='2011-09-01'的时间具体到时分秒是2011-09-01 00:00:00还是2011-09-01 12:00:00呢?
DECLARE @t1 DATETIME,@t2 DATETIME
SET @t1=DATEADD(hour,-4,GETDATE())
SET @t2='2011-09-01'
PRINT '@t1 是:'
PRINT @t1
PRINT '@t2 是:'
PRINT @t2
PRINT '所以:'
IF @t1>@t2 PRINT '@t1>@t2'
ELSE PRINT '@t1<@t2'运行以上SQL,得出如下message:
The time is:2011-09-01 14:07:09 now
@t1 是:
Sep 1 2011 10:07AM
@t2 是:
Sep 1 2011 12:00AM
所以:
@t1>@t2以上返回的message让我很疑惑,这种格式@t2='2011-09-01'的时间具体到时分秒是2011-09-01 00:00:00还是2011-09-01 12:00:00呢?
set @t2 = '2011-09-01';
select @t2
/*-----------------------
2011-09-01 00:00:00.000(1 行受影响)*/
set @t2 = '2011-09-01';
SELECT @t2
PRINT @t2