Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment obtenir un identifiant unique aléatoire numérique dans SQL Server

SELECT ABS(CHECKSUM(NEWID())) % 999999

pour un numéro de téléphone :

SELECT RIGHT('000000' + CAST(ABS(CHECKSUM(NEWID())) % 999999 AS varchar(6)), 6)

NEWID est à peu près aussi aléatoire que possible dans SQL Server.

Cependant, si vous voulez unique, vous pouvez aussi bien commencer à 000000 et aller jusqu'à 999999. Tout générateur aléatoire touchera le problème d'anniversaire .

Vous pouvez avoir des informations uniques ou aléatoires fiables, mais pas les deux de manière fiable