我有以下结构的表:查询缺少的元素
timestamp | name | value
0 | john | 5
1 | NULL | 3
8 | NULL | 12
12 | john | 3
33 | NULL | 4
54 | pete | 1
180 | NULL | 4
400 | john | 3
401 | NULL | 4
592 | anna | 2
现在我所寻找的是一个查询,这将使我的每一个名字值的总和,并设为空的之间(通过时间戳orderd)作为第一个非空的名字在列表中向下,仿佛表如下:
timestamp | name | value
0 | john | 5
1 | john | 3
8 | john | 12
12 | john | 3
33 | pete | 4
54 | pete | 1
180 | john | 4
400 | john | 3
401 | anna | 4
592 | anna | 2
,我会查询SUM(value), name from this table group by name
。我曾经想过并尝试过,但我无法想出一个合适的解决方案。我研究过递归公用表表达式,并认为答案可能存在于那里,但我无法正确理解这些表达式。
这些表仅仅是一些例子,我不知道预先设置的时间戳值。
有人能帮我一个忙吗?非常感谢帮助。
+1用于提供一些样本输入和预期输出(尽管您可能还包括您对总和值的期望)。 – Thomas 2011-02-15 18:07:22