Skip site navigation (1) Skip section navigation (2)

RE: Generar numeros aleatorios enteros de 4 digitos

From: Edwin Quijada <listas_quijada(at)hotmail(dot)com>
To: <morello(dot)cl(at)gmail(dot)com>, <veneca30(at)hotmail(dot)com>
Cc: <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: RE: Generar numeros aleatorios enteros de 4 digitos
Date: 2012-04-08 17:13:44
Message-ID: BAY155-W254138A13E165CA105598CE3360@phx.gbl (view raw or flat)
Thread:
Lists: pgsql-es-ayuda

Sabes que solo puedes generar 9999 y que por ende se van a repetir ?Lo mas simple es generar un random pero a medida que vaya pasando el tiempo van a empezar a salir mas repetidos entonces puedes hacer los siguiente genera los 9999 que tienes en una tabla y cada vez que "generes" uno nuevo solo tendras que hacer un select con ramdom , si quieres, y lo borras de la tabla a medida que pase el tiempo se iran acabando pero siempre tendras un numero en un solo intento y estar seguro que no es repetido.
No se si 9999 son suficientes pero ahi tienes una solucion
From: morello(dot)cl(at)gmail(dot)com
Date: Sat, 7 Apr 2012 22:55:00 -0500
Subject: Re: [pgsql-es-ayuda] Generar numeros aleatorios enteros de 4 digitos
To: veneca30(at)hotmail(dot)com
CC: pgsql-es-ayuda(at)postgresql(dot)org



On 23 March 2012 14:54, maria teresa tarquino chavez <veneca30(at)hotmail(dot)com> wrote:







Buenas tardes lista estoy utilizando la versión 8.4 de postgresql, necesito saber como generar números enteros aleatorios de 4 dígitos para llenar una columna no se pueden repetir deben ser único como una clave, he encontrado funciones que me generan códigos pero tienen letras necesito que solo sea números enteros, gracias de antemano por su ayuda.    


 		 	   		  

Ultiliza random() y vas acomodando al largo maximo. Debes almacenar en una tabla donde debes revisar que no se haya generado antes, si existe en la tabla, vuelves a generar el random. Como tips en la tabla agrega la fecha de creacion, ya q cada vez sera mas lento generar un unico, ya que la posibilidad de repetirse es mayor cuando la table este casi llena, si ha pasado bastante tiempo, habria que eliminar los mas antiguos.


Saludos y suerte con eso!
-- 
Marco A. Orellana Olivares
Móvil: +(57) 3007878494Email: morello(dot)cl(at)gmail(dot)com - morello(dot)cl(at)chile(dot)com


Google IM: morello(dot)cl(at)gmail(dot)com
Live IM: morello_cl(at)hotmail(dot)com


Skype: morello_cl
Blog: http://morellana.wordpress.com | Twitter: http://www.twitter.com/morello_cl



 		 	   		  

In response to

pgsql-es-ayuda by date

Next:From: Alvaro HerreraDate: 2012-04-09 01:10:03
Subject: Re: Rv:
Previous:From: Marco Orellana O.Date: 2012-04-08 03:55:00
Subject: Re: Generar numeros aleatorios enteros de 4 digitos

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group