De acordo com o MSDN, Getdate(), GetUtcDate() e CURRENT_TIMESTAMP todos retornam DATETIME. Fiz um pequeno teste, que confirma que:
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
(recorte)
Existe uma função semelhante que retorna DATETIME2(7)?
SYSDATETIME
retorna umDATETIME2
objeto.