Hola,
Veréis me encuentro con la siguiente situación. Tengo una tabla llamemosla Usuario, el cual tiene una serie de campos. Uno de esos campos es tipoUsuario, que puede ser de 7 tipos. Lo que intento lograr es obtener un registro aleatorio a consultas del tipo:
SELECT * FROM Usuario WHERE tipoUsuario = '1'
SELECT * FROM Usuario WHERE tipoUsuario = '2'
SELECT * FROM Usuario WHERE tipoUsuario = '3'
.....
Hasta ahora lo que habia estado intentando era generar un numero aleatorio en PHP comprendido entre el máximo y mínimo valor de los IDs de cada usuario. El problema es que los usuarios se van registrando de manera aleatoria por lo que podemos tener la siguiente situacion:
IDs del 1 al 7 -> Tipo 1
IDs del 8 al 20 -> Tipo 2
IDs del 21 al 24 -> Tipo 1
....
Si cojo el máximo y mínimo ID del tipo 1 me dará 24 y 1 respectivamente.... pero los IDS entre el 8 y el 20 son del tipo 2, por lo que si genero con php un valor aleatorio entre 1 y 24 va a dar muchos problemas ya que hay 12 numeros internos que no hay que tener en cuenta....
Alguna forma decente de obtener un registro aleatorio para cada tipo de usuario ?
Hay que tener en cuenta que la tabla contiene cerca de 10.000 registros.
un saludo
Veréis me encuentro con la siguiente situación. Tengo una tabla llamemosla Usuario, el cual tiene una serie de campos. Uno de esos campos es tipoUsuario, que puede ser de 7 tipos. Lo que intento lograr es obtener un registro aleatorio a consultas del tipo:
SELECT * FROM Usuario WHERE tipoUsuario = '1'
SELECT * FROM Usuario WHERE tipoUsuario = '2'
SELECT * FROM Usuario WHERE tipoUsuario = '3'
.....
Hasta ahora lo que habia estado intentando era generar un numero aleatorio en PHP comprendido entre el máximo y mínimo valor de los IDs de cada usuario. El problema es que los usuarios se van registrando de manera aleatoria por lo que podemos tener la siguiente situacion:
IDs del 1 al 7 -> Tipo 1
IDs del 8 al 20 -> Tipo 2
IDs del 21 al 24 -> Tipo 1
....
Si cojo el máximo y mínimo ID del tipo 1 me dará 24 y 1 respectivamente.... pero los IDS entre el 8 y el 20 son del tipo 2, por lo que si genero con php un valor aleatorio entre 1 y 24 va a dar muchos problemas ya que hay 12 numeros internos que no hay que tener en cuenta....
Alguna forma decente de obtener un registro aleatorio para cada tipo de usuario ?
Hay que tener en cuenta que la tabla contiene cerca de 10.000 registros.
un saludo