Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoalTenho uma tabela que grava as "apostas" dos usuários para os jogos do Brasil na copa.Os campos são ID, jogo, resultado1 (Brasil) e resultado2 (Adversário).Gostaria de exibir estes dados ao usuário, em tabela, e dar a opção de ordenar por 'otimistas' ou 'pessimistas'.Pensei em fazer assim:SELECT FROM copa WHERE jogo='$jogo' ORDER BY (resultado1/resultado2resultado1) ASC/DESCO negócio funciona, mas só quanto nenhum dos valores (resultado1/resultado2) é zero.3x2 = fator para multiplicação 1,55x2 = fator para multiplicação 2,5E quanto é zero, você já sabe: fode tudo!Exemplificando:0x0= fator para multiplicação 03x0 = fator para multiplicação 0Como eu faria pra ordenar de forma correta mesmo quanto o valor é zero?Valeu!!
procure por control flow functions
http://dev.mysql.com/doc/refman/4.1/pt/con...-functions.html
valeu a ajuda!minha solução final foi a seguinte:$query = mysql_query("SELECT FROM copa WHERE jogo='$jogo' ORDER BY (resultado1(resultado1-resultado2))/(resultado1+resultado2) $order");ele gerou a listagem na ordem que eu queria, certinho...quase quebrei a cabeça pra chegar a este "esquema"... hehevaleu!
Faz um if que teste o resultado que não é zero e condena a multiplicação do order by e substitui por um order by sem a multiplicação.