Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ThunderPHP

Soma em tabela SQL

Recommended Posts

Boa tarde a todos,

 

Mais uma vez venho pedir o auxilio de vcs para resolver um problema,

 

tenho uma tabela chamado premiacao,

 

com os campos usuario, vlrsolicitado, vlrliberado.

 

Preciso somar os valores vlrsolicitado e vlrliberado de cada usuario.

 

tentei várias formas..

 

tenho um while antes que verifica os usuarios e os classifica...

 

$query_nome = "SELECT DISTINCT(usuario) FROM premiacao ORDER BY usuario" ;
	  $result_nome = mysql_query($query_nome);
	  while($nomelist = mysql_fetch_array($result_nome)){
	  echo "<br>".$nomelist[usuario]."<br>";

}

 

 

como faço pra somar os valores e mostrar os resultados a frente de cada usuario?

 

ex... gostaria que ficasse assim

 

Usuario Valor Solicitado Valor Liberado

Fulano de Tal 100,00 100,00

 

Se alguem puder me ajudar...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Andrey,

 

eu não sei se o meu select sum tah certo...

 

SELECT SUM(valorliberado) AS TOTAL FROM premiacao WHERE usuario LIKE '.$nomelist[usuario].'

 

mas não retorna nada....

 

fica em branco o campo...

 

Obrigado..

Compartilhar este post


Link para o post
Compartilhar em outros sites

AMANDA

 

CRISTINA

-

 

 

Ele retorna assim, faz a pesquisa no banco, com o while lista os usuarios, mas não retorna nada, e eu tenho mais ou menos 5 campos nesta tabela premiacao...

 

Cara.. cruel... não sei mais o que fazer, segue o codigo inteiro pra ver se você me ajuda...

 

<?php

$query_nome = "SELECT DISTINCT(usuario) FROM premiacao ORDER BY usuario" ;

$result_nome = mysql_query($query_nome);

while($nomelist = mysql_fetch_array($result_nome)){

echo "<br>".$nomelist[usuario]."<br>";

}

?>

</td>

<td>

<?php

$sql = "SELECT SUM(valorliberado) FROM premiacao WHERE usuario LIKE '.$nomelist[usuario].'";

$exec = mysql_query($sql);

while ($rows = mysql_fetch_assoc($exec)) {

echo $rows["nome"]."-".$rows["SOMA"];

}

?>

 

Obrigado pela ajuda..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse é o sql da tabela

 

tar cod valorliberado valorsolicitado usuario

10 824 1000 1000 98,53 AMANDA

11 5927 409,67 409,67 CRISTINA

 

Essa é a estrutura

 

tar int(11) Não Nenhum auto_increment

cod varchar(100) latin1_swedish_ci Sim NULL

valorliberado varchar(100) latin1_swedish_ci Sim NULL

valorsolicitado varchar(100) latin1_swedish_ci Sim NULL

usuario varchar(100) latin1_swedish_ci Sim NULL

 

Obrigado pela atenção Andrey

Compartilhar este post


Link para o post
Compartilhar em outros sites

Andrey,

 

Me de uma ajuda, o campo decimal (10,2), ele considera exemplo.. 100.50, em vez do que é digitado pelo usuário 100,50...

 

Por isso a opção do varchar...

 

Tem como converter ou algo assim ?

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

tem , na leitura você pode usar

 

str_replace(".",",",$variavel);

 

Um simples exemplo do sum pra você ..

CREATE TABLE  `storage`.`contas` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`quantidade` INT NOT NULL ,
`valor` DECIMAL( 2 ) NOT NULL
) ENGINE = MYISAM ;

INSERT INTO `contas` (`id`, `quantidade`, `valor`) VALUES
(1, 2, '10'),
(3, 3, '40'),
(4, 1, '25');

 

Criei uma tabela , botei 3 registros .. (perceba o tipo dos meus campos)

 

depois pra eu pegar o valor do SUM ..

$sql = mysql_query("SELECT SUM(`valor`) FROM `contas`");
while ($rows = mysql_fetch_array($sql)) {
print_r($rows);
echo '<br>';
echo $rows[0];
}

 

A Saida Foi:

 

Array ( [0] => 75 [sUM(`valor`)] => 75 ) 
75

^_^

 

Mudando a query

 

$sql = mysql_query("SELECT SUM(`quantidade` * `valor`) FROM `contas`");

 

Quantidade Multiplicado Pelo valor .. os operadores de adição , subtração , divisão , multiplicação do mysql são os mesmos do php ..

 

Saida na 'quantidade' multiplicado pelo 'valor'

Array ( [0] => 165 [sUM(`quantidade` * `valor`)] => 165 ) 
165

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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