【精确到纳秒的时间函数】
SYSDATETIME()、SYSUTCDATETIME() ---- 精确程度取决于运行 SQL Server 实例的计算机硬件和 Windows 版本
【生成10位不重复随机数字】
select right(1000000000 + convert(bigint,abs(checksum(newid()))),10)
【生成18位纯数字的不重复ID】
select SUBSTRING(REPLACE(REPLACE(REPLACE(REPLACE(CONVERT(varchar(24),SYSDATETIME()), ' ',''), '-',''), ':',''), '.',''), 3, 12) + Right(1000000000 + convert(bigint,abs(checksum(newid()))),6)
【生成20位纯数字的不重复ID】
select LEFT(REPLACE(REPLACE(REPLACE(REPLACE(CONVERT(varchar(24),SYSDATETIME()), ' ',''), '-',''), ':',''), '.',''), 14) + Right(1000000000 + convert(bigint,abs(checksum(newid()))),6)
本文介绍如何使用SQL Server生成精确到纳秒的时间戳,并提供生成不同长度(10位、18位及20位)的不重复数字ID的方法。这些ID结合了当前时间和随机数,确保其唯一性。
1万+

被折叠的 条评论
为什么被折叠?



