动态减去一个数字

时间:2013-01-09 07:32:58

标签: mysql

我有一个基数为30000且大约有5行,其中每一行都有不同的数字,我想从查询中的基数中减去它们。

我想要实现结果列:

 ID| num  | result
 1 | 1000 | 29000
 2 | 1200 | 27800
 3 | 2100 | 25700
 4 | 4300 | 21400
 5 | 1100 | 20300

2 个答案:

答案 0 :(得分:1)

SET @num := 0;
SELECT 
  id,
  num,
  IF(@num = 0,@num := (30000 - num) , @num := (@num - num)) AS `Result`
FROM
  `mytable` 

Demo

答案 1 :(得分:0)

试试这个:

SELECT id, num, (30000 - @sum:=@sum+num) AS Result
FROM mytable, (SELECT @sum:= 0) AS A

选中此SQL FIDDLE DEMO