SELECT ABS(CHECKSUM(NEWID())) % 999999
per un numero di telefono:
SELECT RIGHT('000000' + CAST(ABS(CHECKSUM(NEWID())) % 999999 AS varchar(6)), 6)
NEWID è il più casuale possibile in SQL Server.
Tuttavia, se vuoi univoco, puoi anche iniziare da 000000 e andare a 999999. Qualsiasi generatore casuale colpirà il problema di compleanno .
Puoi avere univoci o casuali affidabili, ma non entrambi affidabili