0
私は以下のようにmysqlからデータを引き出す関数を持っています。PHPを使ってレコードセットの列に負の数値と正の数値を加算する
function displayTrialBalance(){
require_once('Connections/mpcs_dbConn.php');
mysql_select_db($database_dbConn, $dbConn);
// declare query variables
$query_diff_empty = "SELECT Account_Code, sum(Amount) AS difference FROM journal2 GROUP BY Account_Code ORDER BY difference asc, Account_Code asc";
// check if user wants empty
// query DB
$amounts = mysql_query($query_diff_empty, $dbConn) or die(mysql_error());
$row_amounts = mysql_fetch_array($amounts);
$totalRows_users = mysql_num_rows($amounts);
if ($row_amounts){
function debit($arr){
return ($arr < 0);
}
function credit($arr){
return ($arr >= 0);
}
echo '<table align="center" border="0" bordercolor="#666666" cellpadding="5" cellspacing="3">
<tr class="tableTop">
<td>Account Code</td>
<td>Debit</td>
<td>Credit</td>';
do {
$diff = array($row_amounts['difference']);
echo '
</tr>
<tr class="tableButtom">
<td>'.$row_amounts['Account_Code'].'</td>
<td>';
foreach((array_filter($diff, "debit")) as $new){
echo abs($new).'.00';}
echo '</td>
<td>';
foreach((array_filter($diff, "credit")) as $new2){
echo $new2;
}
echo '</td>';
}while ($row_amounts = mysql_fetch_array($amounts));
echo '</tr>
</table>';
}
}
私はdisplayTrialBalance()を呼び出すときに私が得る:
Account Code Debit Credit
13101 350000.00
22601 3000.00
22201 0.00
41101 3000.00
21201 40000.00
にはどうすればエンド出力テーブルに合計を取得するために負(デビット列)と正(クレジット列)番号を合計することができます?
また、それは私の予想出力があるべきように昇順に勘定コード列をソートすることが可能である:
Account Code Debit Credit
13101 350000.00
22601 3000.00
21201 40000.00
22201 0.00
41101 3000.00
-----------------------------------
Total 353000.00 43000.00
あなたは 'PHP'または' MySql'で望みの結果を得たいですか? – Blank
@Reno私はPHPでそれを取得したい。私はすでにレコードセットを持っていますが、合計を得るために別のクエリを作成することをお勧めしますか? –
@Reno私は単純に値<0を取得するために私のSQLクエリでHAVING句を使用することができます実現。次にarray_sum()を行います。しかし、私はPHPソリューションをお勧めかもしれないと思いますか?また、私はどのように注文を処理するのですか? –