Ir para conteúdo

POWERED BY:

Arquivado

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

tr374

select order RND

Recommended Posts

= "SELECT * FROM respostas WHERE np= " & qpergunta & " ORDER BY chave asc"Gostaria de mudar o ORDER BY para RND dentro do range npAlguem tem um exemplo disso? script, teoria, ...PS são 4 registros em cada npGrato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma busca lhe retornaria pelo menos esse tópico.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Leva a mal não mas pesquisei a tarde inteira e não vi esse tópico, achei um parecido, que sim, falava do newid(), tentei usar e não consegui, fui em frente, estava agora vendo como adiconar valores a um array para depois fazer o rnd, mas muito obrigado e vou insistir mais um pouco no newid().[]´s Raul

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sobre o tópico acima:

 

Fala em fazer conforme abaixo:

 

select top 1 * from tabela order by newid()
ai deu este erro:

Microsoft OLE DB Provider for ODBC Drivers error '80040e14' [Microsoft][ODBC Microsoft Access Driver] Undefined function 'newid' in expression. /be300/perguntas.asp, line 10

abaixo a instrução:

ASP [/tr][tr]listar = "select top 4 * from respostas WHERE np= " & qpergunta & " order by newid()"

Set lista = DB.Execute(listar)

[/tr]

 

isso funciona em Access?

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha... sql eh uma função de manipular dados em base. Ok.. tem seu padrão... mas as empresas q criam essas bases desenvolve funções específica para as suas bases... por exemplo:

um select simples vai funcionar em qq uma base de dados... mas se eu aplicar uma função específica para uma base de dados (onde somente ela vai conseguir interpretar) ela vai dar erro em outra base.. q acho qeh o caso dessa função newid...

 

entaum eh assim, você precisa saber sua base.. access, mysql, ms-sql, etc... e ver a documentação para as funções específicas da sua base, q nativo do SQL acho q naum tem nenhuma função q faça essa ação...

 

eu mexo muito aki com MySQL.. e precisei fazer isso uma vez... ai achei uma função q execute isso.. mas ela soh funciona no MySQL.. beleza..

SELECT * FROM tabela ORDER BY RAND()

mas gambiarras sempre são possíveis.. apesar de comprometer a performance e tornar as coisas mais complexas.. mas... funciona...

 

conta qtos registros a busca vai retornar...

SELECT COUNT(*) tabela

total = xx

 

faz o select novamente sem o count e manda ir para o registro específico (acho q eh assim q eh...

randomize

numero = rnd((total - 1)*1)... naum lembro de cabeça a sintaxe do rnd... da uma verificada

 

rsConsulta.move(numero)

 

 

falow

Compartilhar este post


Link para o post
Compartilhar em outros sites

ska_ska,Obrigado pelas linhas.ORDER BY RAND() só em MySQL serverParti para outro lado vou tentar gravar as "chaves" num array, ai depois slip e rndObrigado[]´s

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.