延迟1毫秒
SELECT getdate()
WAITFOR DELAY '00:00:00.001'
SELECT getdate()
两次的执行结果分别如下
2008-01-10 22:54:13.513
2008-01-10 22:54:13.513
两次获得的时间完全一样。
延迟两毫秒就能看返回的时间差别
SELECT getdate()
WAITFOR DELAY '00:00:00.002'
SELECT getdate()
延迟两次的执行结果
2008-01-10 22:58:37.450
2008-01-10 22:58:37.467
由于我用的一个存储过程中需要毫秒级的时间串产生序列号,因为没有延迟,所以会出现序列号相同的问题,所以这个延迟函数就帮了大忙。
SELECT convert(varchar(8), getdate(),112) + replace(convert(varchar(12),getdate(),114),':','') as NewSerial
WAITFOR DELAY '00:00:00.002'
SELECT convert(varchar(8), getdate(),112) + replace(convert(varchar(12),getdate(),114),':','') as NewSerial
执行结果如下
20080110230256640
20080110230256653