Jump to content


Photo

Somar Em Um Banco De Dados


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

#1 RodrigoMataoBR

RodrigoMataoBR

    Turista

  • Usuários
  • 38 posts
  • Sexo:Masculino

Posted 07/12/2010, 17:05

Minha dúvida é simples:
O que está errado no código abaixo?
$cheat = mysql_query("SELECT usuario,count(usuario) FROM cheaters WHERE usuario='$userlogado'");


#2 LeoB

LeoB

    Super Veterano

  • Usuários
  • 1876 posts
  • Sexo:Masculino
  • Interesses:Programação

Posted 07/12/2010, 17:22

Faltou agrupar por usuário.

SELECT usuario,count(*) FROM cheaters WHERE usuario='$userlogado' GROUP BY usuario

Edição feita por: LeoB, 07/12/2010, 17:22.


#3 RodrigoMataoBR

RodrigoMataoBR

    Turista

  • Usuários
  • 38 posts
  • Sexo:Masculino

Posted 07/12/2010, 17:31

Faltou agrupar por usuário.

SELECT usuario,count(*) FROM cheaters WHERE usuario='$userlogado' GROUP BY usuario








Obrigado, LeoB.
Poderia me explicar qual a diferença entre count(*) e count(usuario)?

O count(*) conta tudo, não é?
Existem as seguintes tabelas no banco: id usuario local id_local data hora ip

Eu gostaria apenas que fosse exibido na página de cada membro o total de tentativas de burlar (usar cheat) o sistema. Usando count(*) também irá dar certo?

#4 LeoB

LeoB

    Super Veterano

  • Usuários
  • 1876 posts
  • Sexo:Masculino
  • Interesses:Programação

Posted 07/12/2010, 18:19

O count(*) retorna o número de linhas. E count(campo) conta quantas ocorrências não nulas naquele campo. No seu caso, não faz diferença, mas acho count(*) mais apropriado.

  • http://dev.mysql.com/doc/refman/4.1/pt/counting-rows.html
  • http://dev.mysql.com/doc/refman/4.1/pt/group-by-functions.html





1 user(s) are reading this topic

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

IPB Skin By Virteq