mySQLクエリを使用して、これらのフィールドの古い残高(経費の合計)、借方(現在の日付に同じIDの経費の合計を入力する必要があります)、クレジット(これらのクエリにはあまり含まれていません)、新しい残高を取得することはできますか? (借方と同じ)。
これで、1日が終了すると、新しい残高が古い残高に追加され、現在の日付の新しい残高が形成されます。コードはありますが、以前の残高は計算されません。
テーブル:rf_expenses
--------------------------------------
id_rf_expenses rf_expense_desc
--------------------------------------
1 salary
2 bonus
3 transportation
表:経費
-----------------------------------------------------------
id_expnses id_rf_expenses expense_amt expense_date
------------------------------------------------------------
1 1 100 current
2 1 100 yesterday
3 2 50 current
4 2 50 current
5 3 200 yesterday
出力:
-----------------------------------------------------------
EXPENSE OLD BALANCE DEBIT CREDIT NEW BALANCE
-----------------------------------------------------------
SALARY 100 100 0 100
BONUS 0 100 0 100
TRANSPO 200 0 0 0
これは、現在の日付のすべてのクエリで発生します。現在の日付より前の日付は、古い残高に合計されます。
SELECT
r.rf_expense_desc,
COALESCE(SUM(expense_amt), 0) - COALESCE(q1.amt2, 0) OLD,
COALESCE(q1.amt2, 0) AS NEW
FROM
rf_expenses r
LEFT JOIN
expenses e ON r.id_RF_expense = e.id_rf_expense
LEFT JOIN
(SELECT
SUM(expense_amt) amt2, id_expense,
rf_expenses.id_rf_expense
FROM
rf_expenses
LEFT JOIN
expenses ON rf_expenses.id_RF_expense = expenses.id_rf_expense
WHERE
expense_date = CURDATE( )
GROUP BY
rf_expense_desc, expense_date) q1 ON r.id_rf_expense = q1.id_rf_expense
GROUP BY
rf_expense_desc