Se c'è solo 10-30% dei numeri già presi - quindi significa che solo Il 10-30% delle query verrà eseguito almeno due volte. Il che non è affatto un grosso problema di prestazioni.
Altrimenti, crea semplicemente una tabella di tutti i numeri a 5 cifre (solo 100.000 righe) e rimuovi tutto ciò che esiste. Quando hai bisogno di un altro numero casuale, scegline uno ed eliminalo.