在SQL Server我們一般使用GETDATE()來取得日期的信息,轉成Varchar時會丟掉毫秒。
其實在SQL Server中還有很多函數可以取得日期信息:
SELECT SYSDATETIME() AS SYSDATETIME,
SYSDATETIMEOFFSET() AS SYSDATETIMEOFFSET,
SYSUTCDATETIME() AS SYSUTCDATETIME,
CURRENT_TIMESTAMP AS CURRENTTIMESTAMP,
GETDATE() AS GETDATE,
GETUTCDATE() AS GETUTCDATE;
查詢結果如下:
SYSDATETIME:2012-06-08 11:31:51.3407471
SYSDATETIMEOFFSET:2012-06-08 11:31:51.3407471 +08:00
SYSUTCDATETIME:2012-06-08 03:31:51.3407471
CURRENTTIMESTAMP:2012-06-08 11:31:51.340
GETDATE:2012-06-08 11:31:51.340
GETUTCDATE:2012-06-08 03:31:51.340
如果用時間作為記錄的Key,可以使用以下方式:
select replace(replace(replace(replace(SYSDATETIME(),'-',''),' ',''),':',''),'.','')