ASP - sacar aleatoriamente

 
Vista:

sacar aleatoriamente

Publicado por Paula (1 intervención) el 18/02/2003 20:54:58
hola: De una tabla con un cierto where necesito sacar un registro aleatoriamente.

Por ejemplo:
De mi tabla pregunta donde conocimiento =historia sacar cualquiera
pero no iempre la misma

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:sacar aleatoriamente

Publicado por Santos Pairazamán (415 intervenciones) el 19/02/2003 16:37:17
Yo he realizado algo Parecido asi que te doy la idea :
Em mi caso en la tabla preguntas tengo un campo IDPregunta autonumérico, creo mi arreglo para almacenar los id de preguntas que se generan en el aleatorio.

'sino existe el array test lo crea y genera el aleatorio almacenando el arreglo en una variable session, de lo contrario recupera los datos en variables
<%if isarray(session("test"))=false then
dim test(10,1)

sqltxt="SELECT Minimo=Min(IdPregunta),Maximo=max(Idpregunta) FROM Preguntas where idtest="&idtest
sqltxt=sqltxt +" And idCategoria="&idsemana
ra.open sqltxt,cn
Minimo=ra("Minimo")
Maximo=ra("Maximo")
ra.close

for s=1 to 5
Randomize
Do Until Not xesta(Aleatorio)
Aleatorio=Int((maximo * Rnd) + minimo)
Loop
test(s,0)=Aleatorio
test(s,1)=0
next
Function xesta(num)
For p=0 To 5
If test(p,0)=num Then
xesta=True
Exit Function
End If
Next
xesta=False
End Function
session("posicion")=1
posicion=1
session("test")=test
else
test=session("mytest")
posicion=session("posicion")
end if
Luego realizo algo como esto :
'almacena el id de pregunta que ya esta en el arreglo y luego se hace el select

<%idpregunta=test(posicion,0)
sqltxt="select * from preguntas where idpregunta="&idpregunta
ra.open sqltxt,cn

El resto es mostrar los datos.

Espero que haya sido c
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar