Jump to content

[Resolvido] Calcular médias


joaocasta

Recommended Posts

Boas noites, queria saber como posso fazer o cálculo das médias das idades do membros do meu site.

Tentei isto, mas não deu. Tentei arranjar solução, mas nada de jeito:

<?php
include "config.php";
$sql = "SELECT ((idade)/SELECT COUNT(idade)) AS media FROM users";
$resultado = mysql_query($sql);
echo $resultado;
?>

Eu tentei com count pois queria saber quantas linhas há na tabela para depois puder fazer a média.

Link to comment
Share on other sites

  • Replies 48
  • Created
  • Last Reply

Top Posters In This Topic

SELECT (SUM(idade)/COUNT(*)) as media from users

Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Link to comment
Share on other sites

Epa' esquecime completamente 😄

Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Link to comment
Share on other sites

Disse-me isto "Resource id #5" nas duas formas que me apresentaram.

E disse bem. O resultante duma instrução mysql_query é, precisamente, um resource. Tens que usar uma das instruções do ramo mysql_fetch_* para obter um resultado usável.

"Para desenhar um website, não tenho que saber distinguir server-side de client-side" - um membro do fórum que se auto-intitula webdesigner. Temo pelo futuro da web.

Link to comment
Share on other sites

<?php
require_once "config.php";

$sql = "SELECT AVG(idade) FROM users";
$rs = mysql_query($sql) or die(mysql_error());

echo $rs;
?>

tenho isto mas aparece novamente Resource id #5

Eh gente, a sério? 😄

O MySQL já tem uma função de média, AVG().

SELECT AVG(idade) AS media
FROM users

@JoaoCasta: não te esqueças de usar alias"(As) Novo campo", como esta no exemplo do mjamado e,este campo ficará com os dados(neste caso a média) resultante da execução da função SQL.

Link to comment
Share on other sites

Já consegui fazer isso, mas tenho outro problema. Como posso fazer percentagens? É que eu tenho de fazer as percentagens do estado civil, e nao sei como o fazer... se me pudessem dar uma ajuda. sff

EDIT: Na base de dados o "estado_civil" está como "INT", pois tenho o estado civil numa tabela à parte.

Edited by joaocasta
Link to comment
Share on other sites

não quererás saber fazer a percentagem de pessoas que tens registadas com a informação de um estado civil ?

 select `estado_civil`,
        count(`estado_civil`) / (select count(`id_user`) FROM `users`) as 'percentagem'
   from `users`
group by `estado_civil`
IRC : sim, é algo que ainda existe >> #p@p
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.