【问题标题】:How to sum the column value dynamically?如何动态地对列值求和?
【发布时间】:2018-12-30 12:06:53
【问题描述】:

我想动态添加列值并将结果存储在另一列中,如下所示。

Column 1    Column 2    Total
60            10         10
75             0         10
80            20         30
100           50         80

还有可能在 RDLC 中做同样的事情。

【问题讨论】:

  • 您能否发布您对上述数据集的期望结果。如果,total 是你的结果,你是如何得到这个的
  • 我想得到结果列中的输出,这是一个示例,这是我为解释而静态创建的
  • 我明白了,但是你是如何在 Column Total 的第一行得到 10 的
  • !第 2 列的第 2 行在第 1 行的结果之下。同时添加第2列,然后将其存储在结果列中。
  • 您是否有一些列显示顺序。或者那是 column1 的用途?

标签: sql rdlc


【解决方案1】:

我提供了一个示例查询以供参考,如果您需要更改以下内容,请告诉我。

签入此示例: http://sqlfiddle.com/#!18/11cf3/2

     create table demo (
  column1 int,
  column2 int
  );

  insert into demo (Column1  ,  Column2) values
  (60 ,10),
  (75 ,0 ),
  (80 ,20),
  (80, 20) ,
  (100,50),
  (150,150),
  (160,160);

    select column1,column2 ,
    sum(column2) over (order by column1,column2 ROWS UNBOUNDED PRECEDING) as total
    from demo

也尝试在 SSRS 中运行相同的查询。

【讨论】:

  • 如果您有重复的 column1, column2 值,此解决方案可能不起作用。您可以添加一个主键并包含在over 子句中来修复它。
  • 您可以在表中插入另一个(80, 20 ) 值并尝试。
  • 感谢您检查该问题,现在我已经更新了查询,希望这能解决您提到的问题。
  • 我已经检查过了。当我们有重复值时,它不起作用。签入此sqlfiddle.com/#!18/d87fb/1 链接。
猜你喜欢
  • 1970-01-01
  • 2016-12-03
  • 2012-03-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-24
  • 2011-08-31
  • 2015-11-26
相关资源
最近更新 更多