重复字段值

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)

我可以制作一个项目编号表,其中“其他值”大于零,但是,我想知道是否有更酷的方法。

谢谢您的帮助!

GMB*_*GMB 5

简单聚合应该适用于您的用例:

select item_number, sum(cost) cost, max(other_value) other_value
from mytable
group by item_number
Run Code Online (Sandbox Code Playgroud)