【问题标题】:BIRT Report with SQL Oracle使用 SQL Oracle 生成 BIRT 报告
【发布时间】:2015-09-18 11:47:18
【问题描述】:

任务是制作一个简单的报告,如下所示:

Trees Planted (Previous Week)      Quantity          Weight

OAK                                     720             544
APPLE                                   150             138
PEAR                                    430             411
PINE                                    602             589
CHESTNUT                                384             357

Sum:                                  2 286           2 039

我需要拉入不同种植事件的数据,以列表示:TREE、QTY、WEIGHT。

现在,问题(或挑战)是:

  1. 在“种植的树木”列中,显示上周种植的树木,按字母顺序分组。
  2. 上周种植的每棵树的数量总和,并将结果显示在“数量”列的适当行中。比,与“重量”相同。

我猜,第一点很简单:

select TREE
from TREETABLE

group by TREE
order by TREE

第二点是这样的:

select QTY
from TREETABLE

where SYSDATE >= next_day(trunc(sysdate), 'MONDAY') - 14
and SYSDATE < next_day(trunc(sysdate), 'MONDAY') - 7

and TREE='OAK'

但我知道,这里有问题。因为这样我们需要为每个单元格指定一个树。将其与第一列相对并链接可能会更好。还是 BIRT 本身有一个特性可以建立这种关系?

【问题讨论】:

    标签: sql oracle report birt


    【解决方案1】:

    它看起来像一个简单的“group by”查询,此时不需要 BIRT 进入场景。在数据集中设置这种查询就完成了:

    select TREE, sum(QTY) as QTY, SUM(WEIGHT) as WEIGHT
    from TREETABLE
    where SYSDATE >= next_day(trunc(sysdate), 'MONDAY') - 14
    and SYSDATE < next_day(trunc(sysdate), 'MONDAY') - 7
    group by TREE
    order by TREE
    

    并在 BIRT 表的页脚创建总计

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多