gpt4 book ai didi

count - jasper 报告计算某些类别的出现次数

转载 作者:行者123 更新时间:2023-12-03 20:08:28 26 4
gpt4 key购买 nike

我已经尝试计算行所属的某些类别的出现次数(请参阅 SQL count occurrences of certain categories that rows belong to )

但现在我想知道,如果不做 sql 的话,jasper 报告是否能够做到这一切?自己做总结而不给数据库服务器额外的工作(这实际上发生在我身上)?

例如,这可能是我的报告:

name | color | flavor
--------------------------
n1 | green | lemon
n2 | blue | strawberry
n3 | red | lemon
n4 | green | lemon
n5 | green | mango
n6 | red | chocolate
n7 | white | lemon
n8 | blue | mango
n9 | green | chocolate

这将是我想得到的总结:
colors | occurrences         flavor    | occurences
-------------------- ----------------------
green | 4 lemon | 4
blue | 2 strawberry| 1
red | 6 mango | 2
white | 1 chocolate | 2

最佳答案

您有 3 个选择:

  • 有 2 个子报告,并在每个订单中按颜色和口味选择。并在每个子报告摘要中将它们作为主总结的一部分。当 SQL 数据被排序时,您可以在 iReport 中为每个列创建组,并在每个组中进行变量计数。缺点是每个子报告都要到 DB 2 次。
  • 有自己的数据源java实现。这就像一个不进行任何数据转换的数据代理。只有 HashMap 计算颜色和 flavor 的出现。然后作为带有报告评估“报告”的附加字段,从数据源获取这些字段并将它们放在报告中。你只去一次 DB。
  • 与 print if 表达式和定义的组(颜色、 flavor )与 print if 表达式的组合可以帮助与 union ALL select 语句一起使用:

    选择 a,b,c 'print_to_detail' 作为 print_if_field,' ' 作为 dummy_field
    联合所有
    选择 a,b,c 'print_to_group1_summary' 作为 print_if_field,color as dummy_field 按颜色排序
    联合所有
    选择 a,b,c 'print_to_group2_summary' 作为 print_if_field, flavor 作为 dummy_field 按颜色排序

  • 也许这有助于作为概念性想法。

    关于count - jasper 报告计算某些类别的出现次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13522293/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com