【发布时间】:2017-01-27 02:37:00
【问题描述】:
我有一个包含序列的表格,并为每个项目计数。我正在尝试提出一个在结果中添加额外列的查询,这样在新列中,每一行/项目将具有所有项目计数的总和,其序列低于该项目。
例如:
items [...] seq counts
a [...] 1 1
b [...] 2 1
c [...] 3 8
d [...] 4 2
a [...] 1 1
e [...] null 1
结果:
items [...] seq counts sum
a [...] 1 1 (doesnt matter, could be 0 or 1)
b [...] 2 1 1
c [...] 3 8 2
d [...] 4 2 10
a [...] 1 1 (doesnt matter, could be 0 or 1)
e [...] null 1 (doesnt matter)
f [...] 5 10 12
我不知道如何用这样的条件总结一些事情。我只知道如何分组并总结一个组中的所有项目。子查询也不适合我
【问题讨论】:
-
首先,第 6 行
a .. 1 1是如何排在第 6 位的?您是否正在使用一些订单?如果这第 6 行是第 2 行怎么办?你的结果会改变吗? -
实际上它是一个巨大的表,有很多连接,所以有重复项、seq、counts 和 sum 组合的行,[...] columnS 包含使每一行独一无二的内容。桌子也没有排序
-
有一个条件你没有提到。第1行和第5行
seq==1(即<2)那么为什么第2行seq==2有sum==1根据要求:“将具有序列低于该项目的所有项目计数的总和" 它应该有sum==2
标签: sql sql-server database