Ir para conteúdo
Fórum Script Brasil
  • 0

Somar Dados


Gafanhoto

Pergunta

Como faço pra pegar todos os valores de determinada coluna em um banco de dados em MySQL e somar todos???

Ex: Eu tenho um db de nome TESTE e lá tem uma tabela com 1 coluna de nome valor...... aí eu cadastro um monte de valores e vai criando linha embaixo...

Quero pegar todos os valores e mostrar na tela o resultado da soma de tudo....

Se puderem me ajudar??? wink.gif

Link para o comentário
Compartilhar em outros sites

12 respostass a esta questão

Posts Recomendados

  • 0

a ordenacao por ordem alfabetica você controla usando no query sql o comando "order by nome", pensando no algoritmo, voce pode fazer assim

soma = 0

i = 1

enquanto existe resultados no array

soma = soma + resultado

i = i + 1

fim enquanto

de quebra voce tem a soma e a quantidade de resultados

é uma ideia, podem haver melhores, mas implemente e experimente.

Link para o comentário
Compartilhar em outros sites

  • 0

Ba, não consegui fazer funcionar..... unsure.gif

vocês não tem nenhum código pronto p me mostrar???

Criei a tabela com dois campos valor e valortotal mas não consegui fazer funcionar...

Dá um erro no mysql_fetch_array($SQL)...

Alguém pode postar o código completo???

Sou novo no pedaço...

Valeu galera!!!!! biggrin.gif

Link para o comentário
Compartilhar em outros sites

  • 0

você não precisa criar o campo valor total...veja só:

$SQL = "SELECT SUM(valor) as valortotal FROM Tabela";

$row= mysql_fetch_array($SQL);

$valor_total = $row['valortotal'];

echo "o valor total é $valor_total";

a 1ª linha: o as valortotal significa como um novo nome.por ex.:seleciona talcampo as talnome....

você pode mudar aquele valor total por outro nome,veja:

$SQL = "SELECT SUM(valor) as totalvalor FROM Tabela";

$row= mysql_fetch_array($SQL);

$valor_total = $row['totalvalor'];

echo "o valor total é $valor_total";

e mais, se você quiser, nem precisa usar o as...

$SQL = "SELECT SUM(valor) FROM Tabela";

$row= mysql_fetch_array($SQL);

$valor_total = $row[0];

echo "o valor total é $valor_total";

vê se dá certo agora... wink.gif

Link para o comentário
Compartilhar em outros sites

  • 0

cara, não conheco o esquema do sum() no query sql, mas se voce quer fazer no codigo, usando o algoritmo que mandei, ficaria algo nesse estilo:

$soma = 0; // valor nulo pra uma soma

while($f = pg_fetch_array($result)) // ou mysql_fetch_array(), pois uso postgres

{

$soma = $soma + $f[valor]; /* soma o valor já calculado com o valor da linha atual da busca */

}

imagino que se voce tem a coluna valor na tabela voce não precisa da coluna valortotal.

as poucas experiencias que fiz com esse codigo deram certo.

Link para o comentário
Compartilhar em outros sites

  • 0

Tá dando esse erro:

Warning:Supplied argument is not a valid MySQL result resource in c:/apache/ on line 7...

Na linha 7 tá o mysql_fetch_array($SQL);

Não sei porque tá dando esse erro...

Tem alguma coisa q eu to errando no criar a tabela?? Sei lá, já tem dois valores inseridos nela,,, 15 e 30...

Pra criar a tabela eu criei isso:

create database Tabela;

depois fiz isso:

use Tabela;

create table Table (valor char(20));

insert into Tabela (valor) values (15);

insert into Tabela (valor) values (30);

Link para o comentário
Compartilhar em outros sites

  • 0

vai um exemplo completo, tá funcionando:

para criar a tabela:

create table teste(

descricao varchar(50),

preço varchar(20)

);

teste.php

require("conecta.php");

$sql = mysql_query("Select sum(preço) from teste") or die ("erro de sql:".mysql_error());

$row = mysql_fetch_array($sql);

echo $row[0];

sendo q conecta.php é o arquivo q faz a conexão com o banco...

outra forma de fazê-lo

teste1.php

require("conecta.php");

$sql = mysql_query("Select sum(preço) as total from teste") or die ("erro de sql:".mysql_error());

$row = mysql_fetch_array($sql);

echo $row['total'];

ambas as formas funcionaram aqui, vê se dá certo agora! wink.gif

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...