[英]Get sum of MySQL column in PHP
我在表中有一個列,我想將其相加並返回總和。 我有一個循環,但它不工作。
while ($row = mysql_fetch_assoc($result)){
$sum += $row['Value'];
}
echo $sum;
您可以在 MySQL 查詢中完全處理它:
SELECT SUM(column_name) FROM table_name;
使用 PDO ( mysql_query
已棄用)
$stmt = $handler->prepare('SELECT SUM(value) AS value_sum FROM codes');
$stmt->execute();
$row = $stmt->fetch(PDO::FETCH_ASSOC);
$sum = $row['value_sum'];
或使用 mysqli:
$result = mysqli_query($conn, 'SELECT SUM(value) AS value_sum FROM codes');
$row = mysqli_fetch_assoc($result);
$sum = $row['value_sum'];
$query = "SELECT * FROM tableName";
$query_run = mysql_query($query);
$qty= 0;
while ($num = mysql_fetch_assoc ($query_run)) {
$qty += $num['ColumnName'];
}
echo $qty;
嘗試這個:
$sql = mysql_query("SELECT SUM(Value) as total FROM Codes");
$row = mysql_fetch_array($sql);
$sum = $row['total'];
我已經替換了您的代碼並且效果很好
$sum=0;
while ($row = mysql_fetch_assoc($result)){
$value = $row['Value'];
$sum += $value;
}
echo $sum;
MySQL 5.6(燈)。 column_value 是您要添加的列。 table_name 是表。
方法#1
$qry = "SELECT column_value AS count
FROM table_name ";
$res = $db->query($qry);
$total = 0;
while ($rec = $db->fetchAssoc($res)) {
$total += $rec['count'];
}
echo "Total: " . $total . "\n";
方法#2
$qry = "SELECT SUM(column_value) AS count
FROM table_name ";
$res = $db->query($qry);
$total = 0;
$rec = $db->fetchAssoc($res);
$total = $rec['count'];
echo "Total: " . $total . "\n";
方法 #3 -SQLi
$qry = "SELECT SUM(column_value) AS count
FROM table_name ";
$res = $conn->query($sql);
$total = 0;
$rec = row = $res->fetch_assoc();
$total = $rec['count'];
echo "Total: " . $total . "\n";
方法#4:折舊(不要使用)
$res = mysql_query('SELECT SUM(column_value) AS count FROM table_name');
$row = mysql_fetch_assoc($res);
$sum = $row['count'];
讓我們使用下圖作為 MySQL 數據庫中的數據示例:
現在,正如問題所提到的,我們需要在表中找到特定列的總和。 例如,讓我們添加日期“09-10-2018”的“duration_sec”列的所有值,並且只添加狀態“off”
對於這種情況,以下是 sql 查詢和代碼:
$sql_qry = "SELECT SUM(duration_sec) AS count
FROM tbl_npt
WHERE date='09-10-2018' AND status='off'";
$duration = $connection->query($sql_qry);
$record = $duration->fetch_array();
$total = $record['count'];
echo $total;
$row['Value']
可能是一個字符串。
嘗試使用
intval($row['Value'])
。
另外,請確保在循環之前設置$sum = 0
。
或者,更好的是,將SUM(Value) AS Val_Sum
添加到您的 SQL 查詢中。
$result=mysql_query("SELECT SUM(column) AS total_value FROM table name WHERE column='value'");
$result=mysql_result($result,0,0);
使用 PHP MYSQL 獲取特定行值的總和
"SELECT SUM(filed_name) from table_name"
$sql = "SELECT SUM(Value) FROM Codes";
$result = mysql_query($query);
while($row = mysql_fetch_array($result)){
sum = $row['SUM(price)'];
}
echo sum;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.