Fórum WebTuga

Tecnologia => Programação => Topic started by: hfca on February 16, 2009, 11:57:43 AM

Title: [Ajuda] SQL contagem
Post by: hfca on February 16, 2009, 11:57:43 AM
precisava de uma ajuda pra fazer um codigo sql que consiste em tenho uma tabela com um campo com valor (INT). o que precisava era de fazer um select a base de dados, selecionar os registos da tabela que quero e fazer a soma desses Campus e apresentar o resultado final.

código já feito até ao momento:

mysql_select_db("consumiveis", $con);
$mes = addslashes(trim($_POST["consumiveis"]));
$ano = addslashes(trim($_POST["ano"]));
$query = mysql_query("SELECT quantidade FROM dados WHERE consumiveis = '$consumiveis' AND ano = '$ano'" );

while ($registo = mysql_fetch_array($query)){
$quantidade = $registo["quantidade"];
$consumiveis = $registo["consumiveis"];
$ano = $registo["ano"];
Title: [Ajuda] SQL contagem
Post by: Catiii on February 16, 2009, 11:57:50 AM
[quote name=\'hfca]precisava de uma ajuda pra fazer um codigo sql que consiste em tenho uma tabela com um campo com valor (INT). o que precisava era de fazer um select a base de dados\' date=\' selecionar os registos da tabela que quero e fazer a soma desses Campus e apresentar o resultado final.[/quote\']

ola! se explicares melhor e colocares ai as coisas que precisas eu ajudo-te. Estás a trabalhar online?
Title: [Ajuda] SQL contagem
Post by: southafrikanse on February 16, 2009, 12:16:54 PM
Quote from: hfcaprecisava de uma ajuda pra fazer um codigo sql que consiste em tenho uma tabela com um campo com valor (INT). o que precisava era de fazer um select a base de dados, selecionar os registos da tabela que quero e fazer a soma desses Campus e apresentar o resultado final.

mysql_select_db("consumiveis", $con);
$mes = addslashes(trim($_POST["consumiveis"]));
$ano = addslashes(trim($_POST["ano"]));
$query = mysql_query("SELECT quantidade FROM dados WHERE consumiveis = '$consumiveis' AND ano = '$ano'" );

while ($registo = mysql_fetch_array($query)){
$quantidade = $registo["quantidade"];
$consumiveis = $registo["consumiveis"];
$ano = $registo["ano"];

SELECT COUNT (quantidade) FROM dados WHERE consumiveis = '$consumiveis' AND ano = '$ano';
Title: [Ajuda] SQL contagem
Post by: hfca on February 16, 2009, 01:56:50 PM
o que preciso é estou a dar saída me material ex: canetas --- 2 / lapis --- 1 e assim sensitivamente, o que pretendo é selecionar todos os campos do material ex: caneta e somar o campo quantidade. depois fazer a quantidade inicial menos quantidade ja utilizada e pretendo que me mostre a quantidade que tenho em stock.
Title: [Ajuda] SQL contagem
Post by: ilovehentai on February 16, 2009, 02:02:51 PM
Sem ver a estrutura de dados é um pouco difícil mas posso te dizer que se quiseres somar todas as quantidades podes fazer

SELECT SUM(quantidades) as "total" FROM tabela;

Isto irá somar todos os valores no campo quantidades da tabela "tabela". Se colocares um WHERE para filtrar apenas as canetas vais ter o total
de canetas em stock.

O resto da tua dúvida não entendi muito bem.
Title: [Ajuda] SQL contagem
Post by: southafrikanse on February 16, 2009, 02:05:49 PM
Então porque não criar uma tabela dedicada às requisições de material apenas?

Ajudava saber quais são todas as tabelas que tens na tua base de dados.
Title: [Ajuda] SQL contagem
Post by: hfca on February 16, 2009, 02:31:49 PM
obrigada vou testar isso.

Já agora vou deixar aqui mencionado a base de dados:

Tabela consumiveis: id , consumivel, referencia, quantidade inicial, quantidade final

Tabela dados: id, consumivel, quantidade, pess_levant, data

o que preciso é de calcolar a quantidade final, e sempre que correr o script vai actualizar a quantidade final.

A quantidade final é a quantidade em stock.
Title: [Ajuda] SQL contagem
Post by: Teotónio Ricardo on February 16, 2009, 04:20:49 PM
Podes criar uma cron que faça o calculo e actualize o valor, ou podes correr a query sempre que um produto for vendido e o stock necessitar de ser alterado.

PS: Só li o ultimo post, portanto posso estar errado no que queiras.
Title: [Ajuda] SQL contagem
Post by: Triads on February 17, 2009, 10:28:27 PM
Quote from: hfcaobrigada vou testar isso.

Já agora vou deixar aqui mencionado a base de dados:

Tabela consumiveis: id , consumivel, referencia, quantidade inicial, quantidade final

Tabela dados: id, consumivel, quantidade, pess_levant, data

o que preciso é de calcolar a quantidade final, e sempre que correr o script vai actualizar a quantidade final.

A quantidade final é a quantidade em stock.

Eu faria o seguinte:
SELECT SUM(quantidade) as total FROM dados GROUP BY consumiveis

Ficavas logo com as quantidades de cada 'consumivel' e depois se quiseres podes muito bem limitar em termos de anos ou até mesmo consumível (como ja tens no SQL 'WHERE consumiveis = '$consumiveis' AND ano = '$ano'').
Title: [Ajuda] SQL contagem
Post by: hfca on February 18, 2009, 08:09:07 PM
ok vou seguir o teu conselho obrigada
Title: [Ajuda] SQL contagem
Post by: hfca on March 04, 2009, 02:09:26 PM
boas tenho o código a funcionar 5 * se alguém precisar é só dizer que eu disponibilizo.