none
obtendo valores do banco de dados RRS feed

  • Pergunta

  • eu tenho a seguinte tabela:
     ____________________
    |_NOME___|__NUMERO_|
    | JOEL        |      2         |
    | SILVIO    |       2         |
    | JOÃO       |      3         |
    | SILVIO    |       3         |
    | JOÃO       |      4         |
    | JOEL        |      5          |
    |ANTONIO  |       3         |
    |ANTONIO  |____2_____|


    EU FIZ UM SELECT:

    select * from tabela where numero = (select max(numero) from tabela) and where nome = 'X'

    ate ai parece bem, pelo menos funciona, mas não é bem isso que eu quero
    eu quero que o select me retorne todos os nomes na tabela e seus maiores numeros
    tipo... quero que ele me retorne

    JOEL        -   5
    JOÃO       -   4
    ANTONIO -   3
    SILVIO     -  3

    DEU PRA ENTENDER?!
    QUERO QUE ME RETORNE O MAIOR NUMERO DE CADA NOME
    SE: SELECT MAX(NUMERO) FROM TABELA, ELE ME MOSTRA TODOS O NOMES
    QUE TEM O NUMERO 5, QUERO QUE ME RETORNE O MAIOR NUMERO DE

    CADA NOME

    JOEL        -   5
    JOÃO       -   4
    ANTONIO -   3
    SILVIO     -  3

    ?? tem como?!

    quinta-feira, 30 de abril de 2009 20:29

Respostas

  • Joey,

    Seria +/- isso:

    SELECT 
      t1.nome, 
      (SELECT MAX(numero) FROM tabela WHERE nome = t1.nome) AS numero 
    FROM tabela AS t1
    GROUP BY t1.nome
    Espero ter ajudado.
    Paulo R. Pereira - Obs.: Se a resposta foi útil não se esqueça de marcar. Obrigado!
    • Sugerido como Resposta Paulo R. Pereira quarta-feira, 6 de maio de 2009 02:29
    • Marcado como Resposta JoeY... _ quarta-feira, 21 de julho de 2010 17:52
    quarta-feira, 6 de maio de 2009 02:29