Php Mysql借贷余额计算
下表是我用php mysql制作的小型金融web应用程序。 我需要帮助在mysql中计算借贷余额 1.表:条目Php Mysql借贷余额计算,php,mysql,mysqli,Php,Mysql,Mysqli,下表是我用php mysql制作的小型金融web应用程序。 我需要帮助在mysql中计算借贷余额 1.表:条目 +----+---------+------------+------------+ | ID | TYPE_ID | NARRATION | DATE | +----+---------+------------+------------+ | 1 | 3 | Test Input | 2015-01-05 | | 2 | 2 | Test
+----+---------+------------+------------+
| ID | TYPE_ID | NARRATION | DATE |
+----+---------+------------+------------+
| 1 | 3 | Test Input | 2015-01-05 |
| 2 | 2 | Test Input | 2015-02-07 |
| 3 | 2 | Test Input | 2015-04-02 |
+----+---------+------------+------------+
2.表:分录项目
+----+----------+-----------+-------+--------+
| ID | ENTRY_ID | LEDGER_ID | TYPE | AMOUNT |
+----+----------+-----------+-------+--------+
| 1 | 1 | 1 | D | 2000 |
| 3 | 1 | 2 | C | 2000 |
| 4 | 2 | 2 | D | 550 |
| 5 | 2 | 1 | C | 550 |
+----+----------+-----------+-------+--------+
因此,我能够列出分类账ID为1的金额
SELECT e.date AS date,
i.type AS type,
i.amount AS amount
FROM entries AS e LEFT JOIN entry_items AS i ON e.id=i.entry_id
WHERE i.ledger_id = '1'
所以结果如下
+------------+---+------+
| 2015-01-05 | D | 2000 |
| 2015-02-07 | C | 550 |
+------------+---+------+
到目前为止,我还没有找到计算余额的方法
我想要的结果是:
+------------+------+---------+---------+
| Date | Type | Amount | Balance |
+------------+------+---------+---------+
| 2015-01-05 | D | 2000 | 2000 |
| 2015-02-07 | C | 550 | 1450 |
+------------+------+---------+---------+
我完全不知道我当前的代码:
SELECT e.date AS date,
i.type AS type,
i.amount AS amount,
SUM(COALESCE(CASE WHEN type = 'D' THEN amount END,0))
- SUM(COALESCE(CASE WHEN type = 'C' THEN amount END,0)) balance
FROM entries AS e LEFT JOIN entry_items AS i ON e.id=i.entry_id
WHERE i.ledger_id = '1'
你试过用这种方法吗?