Problema Group By soma minutos total
Como ei faço para fazer a soma dos minutos para aparecer o total no numero que tem a minutagem?
<table class="calculo_conta" cellspacing="2" cellpadding="2" border="1">
<tr>
<td class="cabecario">Nr. Linha</td>
<td class="cabecario">Duraçao</td>
<td class="cabecario">Tipo de Uso</td>
<td class="cabecario">Torpedo</td>
<td class="cabecario">Pacote Dados</td>
</tr>
<?php
mysql_connect('localhost','root',''); mysql_select_db('calcula_conta');
//soma minutos
function somaMinutos($Duracao_um, $Duracao_dois) {
//"Horário zero"
$data = new DateTime('00:00:00');
//Horário para soma
$total = new DateTime('00:00:00');
//intervalos de tempo
$dataSoma1 = new DateTime($Duracao_um);
$dataSoma2 = new DateTime($Duracao_dois);
//Retorna o intervalo de tempo, no formato DateInterval e adiciona no horário para soma.
$total->add($data->diff($dataSoma1));
$total->add($data->diff($dataSoma2));
$total_min = $data->diff($total)->format('%H:%I:%S');
return $total_min;
}
$calcule = mysql_query("SELECT numero as N, tipo_de_uso as TIPO, duracao as DURACAO,SUM(torpedos) as TORPEDOS,
SUM(dados) as DADOS
FROM calcule_sua_conta GROUP BY numero ASC") or die(mysql_error());
if(@mysql_num_rows($calcule) <= '0'){
echo '<BR><div class="ms in">Sem registros encontrados!</div>';
}else{
while($res_calcule = mysql_fetch_array($calcule)){
$tot_a = somaMinutos($res_calcule['DURACAO'], $tot_a);
$tot_b = $res_calcule['TORPEDOS'];
$tot_c = $res_calcule['DADOS'];
$tipo = $res_calcule['TIPO'];
//Ligações de Oi para Oi
if($tipo == '1'){
$tipo = 'Ligações de Oi para Oi';
//Ligações de Oi para Oi
}elseif($tipo == '2'){
$tipo = 'Ligações de Oi para Fixo';
//Ligações de Oi para Oi
}elseif($tipo == '3'){
$tipo = 'Ligações de Oi para outros celulares';
//Ligações de Oi para Oi
}elseif($tipo == '4'){
$tipo = 'DDD 31 da Telemar dentro da área Oi';
//Ligações de Oi para Oi
}elseif($tipo == '5'){
$tipo = 'Oi Torpedo';
//Ligações de Oi para Oi
}elseif($tipo == '6'){
$tipo = 'Oi Dados';
}else{
$tipo = 'Erro ao pegar tipo';
}
?>
<tr <?php echo $cor;?>>
<td style="text-align:center"><?php echo $res_calcule['N']; ?></td>
<td><?php echo $res_calcule['DURACAO']; ?></td>
<td><?php echo $tipo;?></td>
<td><?php echo $res_calcule['TORPEDOS']; ?></td>
<td><?php echo $res_calcule['DADOS']; ?></td>
</tr>
<?php } }?>
</table>
nao sei se seria um SUM(...comando do mysql...duracao) as DURACAO. Nunca precisei fazer alguma coisa parecida, se alguém souber me ajuda aê
Consegui resolver!
Assim SEC_TO_TIME( SUM( TIME_TO_SEC( duracao ) ) ) AS DURACAO
Discussão (1)
Carregando comentários...