获取MySQL中

时间:2015-06-12 06:58:24

标签: mysql

我有SQL表,它有4列这样的

entry_time          |  A        | B      |
-------------------------------------------
2015-06-05 18:44:56 |  10       |  8     |
2015-06-06 16:04:36 |  -5       | -2     |
2015-06-07 10:01:14 |   3       |  1     |
我希望将A和B列的总和达到特定的给定时间戳,如下所示。
 status at given date |  A        | B      |
 -------------------------------------------
 2015-06-05 23:59:59 |  10       |  8     |
 2015-06-06 23:59:59 |   5       |  6     |
 2015-06-07 23:59:59 |   8       |  7     |
我想用之间的。但是因为我在没有看到数据表及其第一个记录日期的情况下给出了我想要从前端获得总数的日期,有没有办法解决这个问题。请帮助我。

1 个答案:

答案 0 :(得分:0)

你可以在mysql中使用用户定义的变量来做到这一点,但是这需要用于决定数据的顺序,我假设时间戳值定义了这里的排序。因此,使用以下内容可以获得所需的结果

select
entry_time,
a_sum as A,
b_sum as B from(
  select 
  entry_time,
  @A_sum:= @A_sum + A as a_sum,
  @B_sum:= @B_sum + B as b_sum
  from table_name,(select @A_sum:=0,@B_sum:=0)x
  order by entry_time
)x