2016-11-29 9 views
0

Iは、データベース内sum_hour(double型)のクエリの2行クエリの行を計算する方法PHP MySQL?

1行= sum_hour = 2.75

2行= sum_hour = 3.00

にそれが内部属する有しますtype_move = 'P'(開始日> = 2016-11-11 AND end_date < = 2016-11-15)グループの2つ(2つ)のグループ。以下のようにコード:

<?php 
    $sql = "SELECT sum_hour, 
        SUM(sum_hour) 
        FROM table 
        WHERE type_move = 'P' AND user_id='username' AND (start_date >= '2016-11-11' AND end_date <= '2016-11-15') 
        GROUP BY sum_hour "; 

    $result = mysqli_query($connect, $sql); 
    if($result && mysqli_num_rows($result) > 0) 
    { 
     while($row = mysqli_fetch_assoc($result)) 
     { 
      $hour = $row['sum_hour']; 
      echo " Hours = " .$hour. "<br/>"; 
      print_r($row); 
     } 

     echo "Total hours = " .$hour. "<br/>"; 

    mysqli_free_result($result); 
    } 
    else 
    { 
     echo mysqli_error($connect); 
    } 
?> 

し、以下のように出力:

時間= 2.75

時間= 3.00

総時間=?

私の質問は、2行(時間)を計算するには? phpmyadminでsql文を実行しようとしました。それは動作し、私は= 5.75に値の合計を見ることができますが、ブラウザで合計をエコーする方法がわかりません

ありがとう。

答えて

3

ただ、これであなたのループを更新:

$totalHours = 0; 

while($row = mysqli_fetch_assoc($result)) 
    { 
     $hour = $row['sum_hour']; 

     $totalHours += $hour; 

     echo " Hours = " .$hour. "<br/>"; 
     print_r($row); 
    } 

echo "Total hours = " .$totalHours. "<br/>"; 

あなたが最初の値に2つ目の1を追加し、変数の最初の値を格納する必要があります。値がループ外で読み取れることを確認してください。

+0

ありがとうございました! 。それは魅力のように動作します:) – Jamilah

+0

あなたは大歓迎です。将来同じ質問で他の人を助ける準備ができたら、その答えを受け入れてください。がんばろう。 – Irvin

+0

よろしくお願いします。と指摘した。再度、感謝します :) – Jamilah

関連する問題