使用mysql select query中的另一个字段添加或减去字段值

时间:2015-11-18 06:11:58

标签: php mysql

我希望使用另一个字段

来结转字段值

这是我的表格交易

------------------------------
id   | amount  | is_income    |
------------------------------
1    | 400     |1
2    | 100     |0
3    | 300     |1

我希望得到像

这样的结果
--------------------------------------
id   | amount  | is_income |Balance  |
--------------------------------------
1    | 400     |1          | 400
2    | 100     |0          | 300
3    | 300     |1          | 600

如果is_income字段为1,则按之前的金额添加金额。如果is_income字段为0,则用之前的金额减去。

如果有任何方法在没有存储过程的情况下获得结果?

1 个答案:

答案 0 :(得分:3)

试试这个:

SET @balance = 0;
SELECT * , IF( is_income =1, @balance := @balance + amount, @balance := @balance - amount ) AS balance FROM  `your table name `