Ir para conteúdo
Berlan Barbalho

Problema para pular resultados de consulta

Recommended Posts

Boa tarde, estou com um problema para conseguir pular os 4 primeiros resultados dessa consulta, ja tentei usar o ROW_NUMBER() para fazer isso mais não consegui fazer funcionar, alguém poderia da uma ajuda?

 

SELECT TOP 4 GuildMember.G_Name as G_Name, SUM(Character.Resets) as TotalResets, RANK() OVER(ORDER BY SUM(Character.Resets) DESC) as Rank
FROM MuOnline.dbo.GuildMember, MuOnline.dbo.Character
WHERE GuildMember.Name = Character.Name
GROUP BY GuildMember.G_Name
HAVING SUM(Character.Resets) >= 0
ORDER BY SUM(Character.Resets) DESC

 

 

Agradeço antecipadamente!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde.

 

Veja se desta forma é o que precisa:

 

SELECT *
FROM (
SELECT GuildMember.G_Name as G_Name, SUM(Character.Resets) as TotalResets, ROW_NUMBER() OVER(ORDER BY SUM(Character.Resets) DESC) as Rank
FROM MuOnline.dbo.GuildMember, MuOnline.dbo.Character
WHERE GuildMember.Name = Character.Name
GROUP BY GuildMember.G_Name
HAVING SUM(Character.Resets) >= 0
) AS LISTA
WHERE LISTA.RANK > 4

 

  • Obrigado! 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
22 minutos atrás, marcio.theis disse:

Boa tarde.

 

Veja se desta forma é o que precisa:

 


SELECT *
FROM (
SELECT GuildMember.G_Name as G_Name, SUM(Character.Resets) as TotalResets, ROW_NUMBER() OVER(ORDER BY SUM(Character.Resets) DESC) as Rank
FROM MuOnline.dbo.GuildMember, MuOnline.dbo.Character
WHERE GuildMember.Name = Character.Name
GROUP BY GuildMember.G_Name
HAVING SUM(Character.Resets) >= 0
) AS LISTA
WHERE LISTA.RANK > 4

 

Funcionou perfeitamente, obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por Antonio Barbosa
      Saudações colegas,
      Sou novo aqui na comunidad e estou com um grave problema, mas que penso ser muito simples.
       
      Normalmente sempre trabalhei com MySQL, nos meus projectos em php sempre trabalhei e tudo funciona perfeitamente, porém, estou numa empresa em que o SGBD é SQL SERVER  e tenho enfrentado alguns problemas, consigo fazer quase tudo que fazia quando o SGBD era MySQL, mas conforme o projecto na empresa vai crescendo, cresce também  a dificuldade de implementar as minha ideias usando o SQL SERVER, cá vai o problema:
       
      Tenho uma tela de Login em que o mesmo faz a requisição no Banco de Dados SQL SERVER, ele funciona 75%, caso eu coloque o Username Errado, ele trás a mensagem Dados Errados, caso eu erre a Senha, ele apresenta a mensagem de Senha Incorrecta, até aqui tudo bem, mas se eu colocar todos os dados correctos, ele não me apresenta nenhuma mensagem e não me renderiza para a página de destino.
       
      Estou a trabalhar com MVC, abaixo segue-se o código.
       
      Controller
       
      function entrar(){
              $data = array();
              $data['username'] = $_POST['nome_utilizador'];
              $data['password'] = sha1($_POST['senha']);
       
              if(!is_null($this->model->verificausername($data))){
                  echo 2;
              }
              else if(!is_null($a = $this->model->verificasenha($data))){
                  
                  echo 3;
              }    
              else if (!is_null($this->model->entrar($data))):
              echo 1;

          endif;
      }
       
      Model
       
      public function entrar($data){
       $sth =  $this->bd->prepare("SELECT *  FROM tKxUsUtilizador WHERE UtCodigo = :username AND UtSenha = :password");
       $sth->execute(array(
          ':username' => $data['username'],
          ':password' => $data['password']
      ));
       $data = $sth->fetch();
       $count = $sth->rowCount();
       if($count > 0):
                  //login
          Session::init();
          Session::set('UtCodigo', $data['UtCodigo']);
            Session::set('UtSenha', sha1($data['UtSenha']));
          Session::set('loggedIn', true);
          return 1;
      else:
          return null;
      endif;
      }
       
      Preciso muito dessa ajuda,
       
      Obrigado.
    • Por Beatriz Burti
      Olá pessoal
       
      Preciso da ajuda de vocês, atualmente tenho uma consulta que está retornando as datas, nomes e quantidade de erros, gostaria de fazer um pivot para que a data fique como coluna e somar a quantidade de erros. 
       
      Poderiam me ajudar?
       
       
       
      SELECT
        CAST(C.DataPalitagem AS DATE) AS Data,
        C.Id,
        R.Id,
        R.Nome,
        COUNT(DISTINCT CASE WHEN SPC.IdStatus = 4 THEN REL.IdCaptura ELSE NULL END) AS Erros
       FROM
        Caso C (NOLOCK)
        INNER JOIN StatusProcessosCaso SPC (NOLOCK) ON C.Id = SPC.IdCaso
        INNER JOIN Relacionamento REL (NOLOCK) ON SPC.IdCaso = REL.IdCaso AND SPC.IdRobo = REL.IdRobo
        INNER JOIN Robo R (NOLOCK) ON SPC.IdRobo = R.ID
        INNER JOIN StatusProcesso S ON SPC.IdStatus = S.Id
        LEFT  JOIN TipoRobo TR ON R.IdTipoRobo = TR.Id
        LEFT  JOIN CasoCaptura CC (NOLOCK) ON C.Id = CC.IdCaso AND REL.IdCaptura = CC.IdCaptura AND CC.Excluido = 0
       WHERE
        C.Id > 370
        AND
        C.IdStatusCaso >= 2
        AND
        C.DataPalitagem >= CAST(GETDATE()-15 AS DATE)
        AND
        SPC.IdRobo NOT IN (4)
       GROUP BY
        CAST(C.Data AS DATE),
        C.Id,
        R.Id,
        R.Nome
        ORDER BY 
        C.Id,
        R.Id,
        R.Nome
       
    • Por will_jdc
      Boa Tarde a todos, 
      Tenho um programa Windows desktop que utiliza o SQL SERVER como fonte de dados, os usuários iniciam o programa que se conecta ao SQL Server. 
      Após o programa fazer o Login no sql server, o usuário insere a senha do sistema para acessar as informações na base de dados, porém quando ele coloca a senha do sistema, o programa fica processando e acaba que não respondendo, como faço para verificar no SQL Server o que esta impedindo o acesso as informações ?
    • Por leardini
      Boa noite.
       
      Tenho uma consulta feita em PHP que mostra em uma table o resultado, e preciso que essa consulta o Valor do Campo "ID"  passe para uma Variável para que eu possa usar em outra consulta.
       
      Não consegui muita informação para o tipo de conexão que estou usando SQL Server e não My SQL, e é uns de meus primeiros códigos.
       
      Desde já agradeço a atenção!
       
      $rank = odbc_exec($connection, $verifica); if($pg == 1 or $pg == 0){ $i = 1; }elseif($pg > 1){ $i = $ini+1; } while($dados = odbc_fetch_array($rank)) { $id=$i+1; // AQUI OCORRE O PROBLEMA $idmomb = .$dados['id']; echo ($i % 2) ? "<tr>" : "<tr>"; echo '<td><center>'.$dados['ID'].'</center></td>'; echo '<td><center>'.$dados['MonsterName'].'</center></td>'; echo '<td><center>'.$dados['PublicDrop'].'</center></td>'; echo '<td><center>'.$dados['Quantity'].'</center></td>'; echo '</tr>'; $i++; } echo '</table>';  
    • Por raphaelspark
      Fala galera, eu estou com um problema aqui que é o seguinte:
      Tenho um banco de dados em produção que ele não é acessível externamente. Eu preciso ter uma copia dele, sincronizada para expor ele e meu sistema consumir. Estava estudando sobre o Mirror mas fiquei com algumas duvidas se ele realmente resolveria o meu problema. Em um dos tutoriais que vi me pareceu que o banco mirror não é acessível para consultas. Alguém consegue me confirmar isso ou tem alguma outra opção de arquitetura para eu conseguir uma copia sincronizada do banco em outro servidor?
      Usamos o SQL Server 2012 aqui.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.