如何将以前的余额添加到报表中的运行总计

时间:2019-06-09 19:09:30

标签: php mysql fpdf

我正在准备一份报告,该报告从MySQL数据库中提取数据。此报告涉及“运行总计”。运行总计运行良好,除了“上一个余额”未总计到运行总计。

实际上,我是PHP和MySQL的新手。我能够在MS Access报告中做到这一点。参见此处:Previous Balance added to First Row only in Access Report

我在报告中使用以下代码:

SELECT
    Pmt_Date,
    Description,
    Amount_In,
    Amount_Out,
    (@sum := @sum + Balance) AS BalanceTotal
FROM
    view_transactions
JOIN(
SELECT @sum := 0
) AS tx
WHERE
    Sch_Code = ? AND SESSION = ? AND Term = ? AND Bank = ? AND(
        Pmt_Date BETWEEN '".$st_start_date."' AND '".$st_end_date."'
    )
ORDER BY
    Pmt_Date ASC

我使用以下代码获取“上一个余额”:

SELECT
    SUM(Balance) AS PreBalance
FROM
    view_transactions
WHERE
    Sch_Code = ? AND SESSION = ? AND Term = ? AND Bank = ? AND(Pmt_Date < '".$st_start_date."')

我知道我的方法只能得到这样的东西: https://i.stack.imgur.com/rcRBb.png(目前正在获取),但所需的输出应类似于: https://i.stack.imgur.com/IuT5E.png

(请比较平衡栏)

我们将不胜感激。

1 个答案:

答案 0 :(得分:0)

万一有人对我的解决方法感兴趣:

我更改了此部分:

SELECT @sum := 0

对此:

SELECT @sum := COALESCE(NULLIF(SUM(Balance), ''), 0)
FROM
    view_transactions
WHERE
    Sch_Code = ? AND Session = ? AND Term = ? AND Bank = ? AND (Pmt_Date < '".$st_start_date."')