[SQL] Somar 2 campos

pedroqwe

Membro
Boas! estou com uma pequena duvida...
Tenho isto:

Tabela_visita
id_visita
id_func
id_cond
id_mat
quantidade_vis
facturado_vis
comentario_vis
hora_vis
inserido_em

tabela_materialcond

id_materialcond
nome_material
quantidade


Queria fazer uma lista deste género:

semttuloklf.jpg


A cada Material correspondesse um gasto total ou de stock ou de visitas (as visitas é o material gasto)

Se me puderem ajudar agradeço :)
 
hey, bem isto vai ser um bocadinho a pressa estou com pouco tempo mas pode ser q te de ideias
Código:
select id_mat,sum(quantidade_vis) from tabela_visita group by id_mat
sei q isto não é exactamente o que pediste mas em principio deve de te dar 1 material e quantidades em visita, logo quando tiver mais tempo tento dar aqui um salto.
Se não ajudou sorry :P

cumpz
 
uhmmm nao tens que pedir desculpa, deu para perceber que eu é que nao tinha sido suficientemente claro e até posso até ter baralhado um pouco...

o pretendido era mesmo (manualmente ou por funçao) :

ele correr todos os id's de materiais existentes em visitas e somar as suas quantidades vamos supor

para o cond: 1 utiliza o id_mat: 3 do qual foi gasto numa visita quantidade: 5 do id 3 e noutra visita a quantidade:3 do mesmo id 3

ou seja deveria me mostrar no condominio 1 que tinha sido gasto o id 3 em quantidade 8

espero agora ter sido mais claro :D
 
hey , tou no work por isso nao vou poder testar mas talvez o seguinte seja o q queiras
Código:
select id_cond,id_mat,sum(quantidade_vis) from tabela_visita group by id_cond,id_mat

deve te devolver cond: 1 mat:3 qtt: 8

cumpz
 
<table width="450" border="0" align="center">
<tr class="texto_preto">
<td width="200"><strong>Material Gasto</strong></td>
<td width="118"><strong>Quantidade em Visitas</strong></td>
<td width="118"><strong>Quantidade em Stock</strong></td>
</tr>
<?
$idcond = $_GET['id'];
$query = "SELECT * FROM material_condominio WHERE id_cond = $idcond";
$resultado = mysql_query($query);
$i=0;
while($row = mysql_fetch_assoc($resultado)) {
$i++;
?>
<tr class="texto_preto">
<td>
<?
$query1 = "SELECT * FROM material WHERE id_mat= '$row[id_mat]'";
$resultado1 = mysql_query($query1);
$row1 = mysql_fetch_assoc($resultado1);
?>
<?=$row1['nome_mat'];?></td>
<td> ? </td>
<td> ? </td>
</tr>
<? }?>
</table>

o meu problema e mesmo meter ali que funcione :\
 
Atao por isso é q eu nao estava a perceber eu estava a dar um sql q devolvia todas as linhas agrupadas mas no entanto tu estas a fazer por partes com varias queries em vez de uma so, bem nunca peguei em php no entanto o q deves querer a nivel de sql
Código:
$query1 = "SELECT id_cond,id_mat,sum(quantidade_vis) as soma FROM tabela_visita WHERE id_mat= '$row[id_mat]' and id_cond = $idcond group by id_cond,id_mat ";
                    ...
<?=$row1['soma'];?>
bem deve ser algo deste tipo ... mas nao sei, o sql deve funcionar a nivel de php é q nao sei :P
Como ja disse nao programo em php mas acho q deveria haver uma forma mais facil de executar isso tudo numa so query em todo caso o sql q meti acima deve em principio fazer o q queres.

cumpx
 
Back
Topo