ano*_*tie 0 sql oracle group-by sum max
我正在处理的数据表有一个项目的多行成本需要求和,但是,另一个字段中的一个值需要在该求和行上重复。例如:
+-------------+------+-------------+
| ITEM NUMBER | COST | OTHER VALUE |
+-------------+------+-------------+
| 1 | 10 | -1 |
| 2 | 4 | -1 |
| 1 | -2 | 123 |
| 3 | 3 | -1 |
And lots more...
Run Code Online (Sandbox Code Playgroud)
结果应如下所示:
+-------------+------+-------------+
| ITEM NUMBER | COST | OTHER VALUE |
+-------------+------+-------------+
| 1 | 8 | 123 |
| 2 | 4 | -1 |
| 3 | 3 | -1 |
Run Code Online (Sandbox Code Playgroud)
我可以制作一个项目编号表,其中“其他值”大于零,但是,我想知道是否有更酷的方法。
谢谢您的帮助!
简单聚合应该适用于您的用例:
select item_number, sum(cost) cost, max(other_value) other_value
from mytable
group by item_number
Run Code Online (Sandbox Code Playgroud)