Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

poletto

Busca aleatoria SQL

Recommended Posts

Eu tenho uma tabela em uma banco de dados Access, gostaria de saber maneiras para buscar registros aleatoriamente... desta tabela.Grato =)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara você pode fazer assim:1 - Faz um select para pegar a chave da tabela que você desejar fazer a busca aleatória certo, sua tabela tão uma chave primária né? entao digamos que sua tabela se chame usuarios e a chave primaria seja codigo, faz o select:Select codigo from usuarios 'Estou pegando todos os códigos da tabela usuário2 - você agora faz um loop no resultado e coloca todos os valores dentro de um array3 - Agora com o array pronto você utiliza o Rnd() para pegar um valor aleatório da chave4 - Com o valor em mãos você agora repete a consulta da seguinte maneiraSelect * from usuario where codigo = Valor do resultado do Rnd()Entendeu, caso não tenha entendido, me avisa que te mando em pvt um codigo que eu tenho aqui.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Grato =), eu entendi a idéia, porém não sei trabalhar com vetores no asp.Se possível, me mande um exemplo. Ficaria mais fácil. O que eu procuro seria bem isto o que você resumiu =). Só mais uma questão, fazendo desta maneira, uma tabela com aproximadamente 2 mil registros, ficaria muito lento de se carregar o aleatório?Grato novamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Claro que fica sim mais lento, qualquer consulta quanto maior o numero de registro mais demorado fica. Se bem que neste ponto você irá apenas fazer um loop nos 2mil registros. O exemplo eu te mando daqui a pouco porque não tenho os arquivos aqui e vou ter de pegar no servidor.

Compartilhar este post


Link para o post
Compartilhar em outros sites

asp.net ... veja se minha ideia naum eh muito absurda, mas seria legal utilizar o RecordCount pra ver qtos registros tem e usar um random baseado nesse unico numero.. e depois faz um select!Mas com certeza tem q ter chave primaria.. senão embanana tudo!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pode sim mas se ele tiver campos que foram excluidos entende, tipo assim tem 500 registros, mas no caso o registro 450 foi deletado, então vai ter a possibilidade dele pegar como resultado um numero de registro que não existe. Por outro lado se ele tiver a certeza que o campo tem numeros sequenciais, ai sim não tem problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se bem que neste ponto você irá apenas fazer um loop nos 2mil registros.

Acho que quanto a isso, você não precisa fazer um loop... é só fazer uma matriz dando um getrows na tabela...veja esse exemplo: Clique aqui

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.