# Asignar, a cada ficha, un número diferente y sin repetirse

**URL:** <https://foros.velneo.com/t/asignar-a-cada-ficha-un-numero-diferente-y-sin-repetirse/11704>\
**Category:** Velneo\
**Created:** [21 Diciembre, 2025 14:50 UTC](https://foros.velneo.com/t/asignar-a-cada-ficha-un-numero-diferente-y-sin-repetirse/11704 "2025-12-21T14:50:46Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![martinezfulla](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/martinezfulla/32/5626_2.png) [@martinezfulla](https://foros.velneo.com/u/martinezfulla)\
**Post date:** [21 Diciembre, 2025 14:50 UTC](https://foros.velneo.com/t/asignar-a-cada-ficha-un-numero-diferente-y-sin-repetirse/11704/1 "2025-12-21T14:50:46Z")

</div>

Hola,

tengo una base de datos de personas (hay 11 personas). Lo que quiero es simular el funcionamiento de un amigo invisible, es decir, necesito es que se generen número aleatorios (en este caso del 1 al 11 sin repetirse) y que se asigne un número DIFERENTE de estos generados, uno a cada persona/ficha, de manera que no haya dos fichas con el mismo número asignado.

Como se ve en la imagen (columna con la flecha), lo que consigo es lo de los números aleatorios, pero se me repiten, por lo que no cumple con mi intención.

Por ahora solo quiero conseguir esto. Más adelante ya pondré condicionantes como por ejemplo que dicho número asignado no pueda ser el de la pareja, etc. Pero eso ya vendrá.

Dejo también una instantánea con el código del proceso.

Muchas gracias y hasta pronto

 ![velneo-amigo-invisible](https://canada1.discourse-cdn.com/flex035/uploads/velneo/original/2X/a/ab5ea9435716faf4b202a2ec56f3ab7bac88d582.png)

 ![Captura de pantalla 2025-12-21 154911](https://canada1.discourse-cdn.com/flex035/uploads/velneo/original/2X/7/7a7c0b86de4b4773f3ad2726f24f664a14daccb4.png)

---

<div class="post-metadata">

**Author:** ![admvelneo34](https://avatars.discourse-cdn.com/v4/letter/a/aeb1de/32.png) [@admvelneo34](https://foros.velneo.com/u/admvelneo34)\
**Post date:** [22 Diciembre, 2025 14:57 UTC](https://foros.velneo.com/t/asignar-a-cada-ficha-un-numero-diferente-y-sin-repetirse/11704/2 "2025-12-22T14:57:37Z")

</div>

hola! tendrias que hacer una comprobación recursiva, que te evalué si el numero ya ha sido asignado si al cargar la lista por ese campo con ese valor lo encuentra entonces paras el recorrido y asignas otro numero. es lo que se me ocurre

---

<div class="post-metadata">

**Author:** ![martinezfulla](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/martinezfulla/32/5626_2.png) [@martinezfulla](https://foros.velneo.com/u/martinezfulla)\
**Post date:** [22 Diciembre, 2025 16:25 UTC](https://foros.velneo.com/t/asignar-a-cada-ficha-un-numero-diferente-y-sin-repetirse/11704/3 "2025-12-22T16:25:23Z")

</div>

Lo que no consigo es la manera de cómo hacer la comprobación recursiva…

Muchas gracias

---

<div class="post-metadata">

**Author:** ![admvelneo34](https://avatars.discourse-cdn.com/v4/letter/a/aeb1de/32.png) [@admvelneo34](https://foros.velneo.com/u/admvelneo34)\
**Post date:** [22 Diciembre, 2025 16:46 UTC](https://foros.velneo.com/t/asignar-a-cada-ficha-un-numero-diferente-y-sin-repetirse/11704/4 "2025-12-22T16:46:26Z")

</div>

![image](https://canada1.discourse-cdn.com/flex035/uploads/velneo/original/2X/8/8e409b28188eca1b0ae3066ed2a67150d4f8a2fd.png)  
tengo algo similar. un proceso que me evalua si ya he asignado un id de la misma tabla y se llama asi mismo mientras que no encuentre resultado y se termine la lista

---

<div class="post-metadata">

**Author:** ![martinezfulla](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/martinezfulla/32/5626_2.png) [@martinezfulla](https://foros.velneo.com/u/martinezfulla)\
**Post date:** [22 Diciembre, 2025 17:00 UTC](https://foros.velneo.com/t/asignar-a-cada-ficha-un-numero-diferente-y-sin-repetirse/11704/5 "2025-12-22T17:00:55Z")

</div>

![image](https://canada1.discourse-cdn.com/flex035/uploads/velneo/original/2X/9/995afe416667f53335c115f76c1fd49dd3655d29.png)

Claro, yo lo estoy haciendo así, y lo que no me funciona es lo del registerexists…. Entonces mejor hago otra tabla a parte de la de participantes, con los números aleatorios, ¿es así?

---

<div class="post-metadata">

**Author:** ![admvelneo34](https://avatars.discourse-cdn.com/v4/letter/a/aeb1de/32.png) [@admvelneo34](https://foros.velneo.com/u/admvelneo34)\
**Post date:** [22 Diciembre, 2025 17:11 UTC](https://foros.velneo.com/t/asignar-a-cada-ficha-un-numero-diferente-y-sin-repetirse/11704/6 "2025-12-22T17:11:15Z")

</div>

no, yo te diria que tomes el codigo de la persona actual (a la que vas a generarle el numero) cuando generes el numero carga la lista de participantes y recorrela has una doble condicional si año\_actual=num\_random y ID\_participante es diferente al id\_actual si esto coincide significa que el numero ya fue asignado y debes generar uno nuevo. sino puedes continuar, no se si me explico

---

<div class="post-metadata">

**Author:** ![martinezfulla](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/martinezfulla/32/5626_2.png) [@martinezfulla](https://foros.velneo.com/u/martinezfulla)\
**Post date:** [22 Diciembre, 2025 21:02 UTC](https://foros.velneo.com/t/asignar-a-cada-ficha-un-numero-diferente-y-sin-repetirse/11704/7 "2025-12-22T21:02:05Z")

</div>

![image](https://canada1.discourse-cdn.com/flex035/uploads/velneo/original/2X/e/eae3d1596eb79aa23f9d6f08f33ae99ae44d6f64.png)

Lo siento por mi incompetencia… pero creo que no lo acabo de entender…. ¿era esto lo que decías? Así no me funciona….

Lo siento de nuevo por las molestias y muchísimas gracias por toda la ayuda!! Me sirve también para aprender! Gracias

---

<div class="post-metadata">

**Author:** ![martinezfulla](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/martinezfulla/32/5626_2.png) [@martinezfulla](https://foros.velneo.com/u/martinezfulla)\
**Post date:** [22 Diciembre, 2025 22:19 UTC](https://foros.velneo.com/t/asignar-a-cada-ficha-un-numero-diferente-y-sin-repetirse/11704/8 "2025-12-22T22:19:16Z")

</div>

![image](https://canada1.discourse-cdn.com/flex035/uploads/velneo/original/2X/7/724b096cfaf1bad893fe6a0d3f8736ce97c7963e.png)

¡¡CONSEGUIDO!! Dejo el código por si a alguien le sirve de ejemplo….

Muchísimas gracias y un saludo
