none
Pegar os cinco maiores valores do banco. RRS feed

  • Pergunta

  • Bom estou começando agora mas me deparei com uma duvida aqui sobre o banco de dados.
    Eu possuo uma tabela Jogador (cod_jog, nome, ano, pontuacao,tabela)

    Se não me engano assim eu mostraria apenas o jogador com maior pontuação.

    public string Rank(string tabela)
            {
                string primeiro;
                comando = new SqlCommand("SELECT MAX(Pontuacao) FROM Jogador WHERE Tabela = @Tabela");
                comando.Parameters.AddWithValue("@Tabela", tabela);
                comando.Connection = conexao;
                AbrirConexao();
                leitor = comando.ExecuteReader();
                leitor.Read();
                primeiro = leitor["Pontuacao"].ToString();
                FecharConexao();
                return primeiro;
            }

    Como eu faço para mostrar os 5 primeiros colocados no formato
    Nome,Pontuação.

    Grato.

    sexta-feira, 5 de abril de 2013 11:09

Respostas

  • amigo use:

    comando = new SqlCommand("SELECT nome, SUM(Pontuacao) [Pontuacao] FROM Jogador WHERE Tabela = @Tabela GROUP BY nome ORDER BY pontuacao");

    desse modo seu DataReader terá 2 colunas com o nome do jogador e a soma dos pontos q ele fez ordenados pelo

    maior numero de pontos

    abraços !


    Att, Afonso Fernandes.

    • Marcado como Resposta AndersonShort segunda-feira, 8 de abril de 2013 13:07
    sexta-feira, 5 de abril de 2013 11:50

Todas as Respostas

  • amigo use:

    comando = new SqlCommand("SELECT nome, SUM(Pontuacao) [Pontuacao] FROM Jogador WHERE Tabela = @Tabela GROUP BY nome ORDER BY pontuacao");

    desse modo seu DataReader terá 2 colunas com o nome do jogador e a soma dos pontos q ele fez ordenados pelo

    maior numero de pontos

    abraços !


    Att, Afonso Fernandes.

    • Marcado como Resposta AndersonShort segunda-feira, 8 de abril de 2013 13:07
    sexta-feira, 5 de abril de 2013 11:50
  • Você pode ja montar na sentensa SQL

    SELECT TOP 5 CODIGO,SUM(PONTOS) FROM clientes
    GROUP BY    CODIGO ORDER BY SUM(PONTOS ) DESC

    Dessa forma você ja tera o retorno dos cinco maiores resultados


    Junior

    domingo, 7 de abril de 2013 11:20
  • Consegui já usei oque você falou e um amigo me ajudou aqui também.

    Vlw.
    segunda-feira, 8 de abril de 2013 13:08