Jump to content


Photo

Classificar Resultados No Mysql


  • Faça o login para participar
2 replies to this topic

#1 gutostraube

gutostraube

    Normal

  • Usuários
  • 71 posts
  • Sexo:Não informado

Posted 13/06/2006, 10:39

Olá pessoal,

Queria fazer uma busca no banco que retornasse as linhas ordenadas por relevância, ou seja, primeiro as que mais aparecem. Assim...

Se tenho um tabela:

tb_coisa
+-----+--------+
| cod | nome   |
+-----+--------+
| 1   | jose   |
| 2   | maria  |
| 3   | maria  |
| 4   | joao   |
| 5   | jose   |
| 6   | maria  |
| 7   | jose   |
| 8   | paula  |
| 9   | joao   |
| 10  | carlos |
| 11  | maria  |
+-----+--------+

Selecionando os nomes, retornaria:

+--------+
| nome   |
+--------+
| maria  |
| jose   |
| joao   |
| paula  |
| carlos |
+--------+

Ordenados pelo número de ocorrências.

Uso MySQL 4.1 e não posso usar subqueries... <_<

Valeu!
Gustavo Straube
Analista de Sistemas

#2 xleandro

xleandro

    Saber eh poder

  • Usuários
  • 359 posts
  • Sexo:Não informado
  • Localidade:ES
  • Interesses:Linguagens de programaçao, SO`s, hardwares e softwares.

Posted 13/06/2006, 12:39

SELECT nome FROM tb_coisa GROUP BY nome ORDER BY count(nome) desc


Testa ae (y)
Nesta guerra jah conquistamos grandes e pequenas batalhas, desde as mais faceis ateh akelas que para qualquer outro mortal seria dita como inalcansavel, mas então, pq continuar? Simples...
Pq o mais importante não eh vencer todas as batalhas, mas sim perpetuar a guerra. ;o)

Meu fotolog: http://www.pixlog.net/xleandro
Leandro Pretti

#3 pimentao

pimentao

    Novato no fórum

  • Usuários
  • 2 posts
  • Sexo:Não informado

Posted 20/06/2006, 16:42

Pode utilizar, conforme a sintaxe abaixo:

SELECT nome, Count(nome) as total FROM tb_coisa GROUP BY nome ORDER BY total DESC


Dicas como esta, estão no livro: MySQL - Aprendendo na prática.
Excelente livro. Indico.

http://www.lcm.com.b...

;)




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq