ตาม MSDN, Getdate (), GetUtcDate () และ CURRENT_TIMESTAMP จะส่งกลับ DATETIME ทั้งหมด ฉันรันการทดสอบสั้น ๆ ซึ่งยืนยันว่า:
CREATE TABLE #t(T DATETIME2(7));
GO
DECLARE @i INT ;
SET @i=1;
WHILE @i<10000 BEGIN ;
INSERT #t VALUES(CURRENT_TIMESTAMP) ;
SET @i=@i+1;
END ;
SELECT DISTINCT t
FROM #t
ORDER BY t ;
---
2013-01-28 13:23:19.4930000
2013-01-28 13:23:19.4970000
2013-01-28 13:23:19.5000000
2013-01-28 13:23:19.5030000
2013-01-28 13:23:19.5070000
2013-01-28 13:23:19.5100000
2013-01-28 13:23:19.5130000
(ตัดด้วยขากรรไกร)
มีฟังก์ชั่นที่คล้ายกันที่ส่งกลับ DATETIME2 (7) หรือไม่?
SYSUTCDATETIME()
GETUTCDATE()