精华内容
下载资源
问答
  • 对报表按类别字段分组
    2021-03-12 22:41:51

    需求说明

    在报表对数据进行汇总统计时,通常是按照某个字段进行分组,比如按地区、类别等字段分组后对其他信息进行汇总,但有一种分组模式为不规则分组,其分组是根据数据的值段来分的,例如按照分数段、年龄段、按时间段等,属于某个值区间的记录归到一个组里如下图所示:

    ee51677f645038f9c3f46a61aff12e37.png

    在上图中我们可以看到,报表根据订购日期将订单数量和订单金额分成四组,分别统计 "2012 年圣诞前"、“2012 年圣诞–2013 年国庆”、“2013 年国庆–2014 年五一”、"2014 年五一以后" 四个时间段的订单。

    这种按值段进行分组的分组报表被称为按段分组,下面我们介绍一下润乾报表中如何实现该报表。

    定义数据集

    ds1:SELECT 订单. 订购日期, 订单明细. 数量, 订单明细. 单价, 订单明细. 折扣, 客户. 地区 FROM 订单明细, 订单, 客户 WHERE 客户. 客户 ID = 订单. 客户 ID AND 订单. 订单 ID = 订单明细. 订单

    增加参数

    报表中按时间段进行分组,实际应用中时间段通常是动态变化的,动态变化的时间段可以通过参数动态控制,所以此处增加参数进行控制:

    参数名:arg1,数据类型:日期组,值表达式:2012 -12 -25, 2013 -10 -1, 2014 -5-1

    参数名:arg2,数据类型:字符串组,值表达式:2012 年圣诞前, 2012 年圣诞–2013 年国庆, 2013 年国庆–2014 年五一, 2014 年五一以后

    arg1 参数用于控制按段分组时的日期段,arg2 用于设置报表展示时单元格的显示信息,稍后做详细介绍

    制作报表

    报表设计模板如图:

    98052f3a452789748d046ea9f6e3b96c.png

    A3:=ds1.group(地区; 地区:1),按照地区进行分组

    B3:=ds1.count(),进行计数操作,统计订单数量

    C3:=ds1.sum( 单价数量 ),对订单金额汇总,注意,数据库中并没有订单金额字段,订单金额可通过单价数量计算出,润乾中支持 sum 前先对字段进行相应操作,并设置 C3 单元格显示格式为:¥#0.00

    B1:表达式为 =ds1.plot(订购日期, arg1),此处使用数据集的 plot 函数(按段分组),第一个参数(订购日期)为要分组字段,第二个参数(arg1)为分段区间,函数主要功能是根据订购日期字段将数据集按照 arg1 参数指定的分段区间划分到不同的组内,该函数返回值为整数组,代表记录按值段分组后组的顺序,如 list(0,1,2,3) 代表第一组,第二组,第三组,第四组,具体函数说明见附注,将单元格扩展方向改成横向,此时报表预览展示效果如下:

    572e996a1d34d46fdbd2517c57524aa5.png

    可以看到,B1 单元格返回的是 0,1,2,3 这种整数,所以要对其设置显示值表达式以达到显示效果,这里就用到了之前定义的 arg2 参数,在 B1 单元格显示值表达式中写入:map(to(0,count(arg1)),arg2),map 函数主要用于显示值表达式映射,该函数有两个参数均为 list,由于 B1 单元格的真实值为 0,1,2 这种整数,所以 map 函数第一个参数为 0 到分段区间个数的扩展,第二个参数会按照顺序映射返回到显示值属性中,这样 B1 单元格就能按照 arg2 参数中设置好的内容进行显示。而分段区间和显示值均是通过参数传递,所以此报表的分段信息可以通过程序控制参数达到动态效果。

    根据实际要求设置报表样式,最终效果如下:

    cf156e82b3bc3e90a201e737c6873407.png

    附注:

    plot 函数说明:

    根据数据值段进行分组,俗称“按段分组”

    语法:

    datasetName.plot(valueExp,listExp{,filterExp})

    参数:

    valueExp 用于分组的值表达式

    listExp 数据值段列表,同 valueExp 数据类型相同的数组,要求其中元素从小到大排列

    filterExp 过滤表达式

    返回值:

    整数组,代表记录按值段分组后组的顺序,如 list(0,1,2,3) 代表第一组,第二组,第三组,第四组。因此,定义完单元格数据值表达式后还需要定义显示值表达式,比如第一组代表不及格,第二组代表及格等等

    选项:

    @r 是否为根数据集表达式

    @c 表示与元素比较时数据值段临界值只包含在第 1 个碰到的区间,相同的临界值不包含在第 2 个碰到的区间。缺省数据值段临界值只包含在第 2 个碰到的区间。

    @z 表示 listExp 返回的数组按从大到小排列; 缺省为从小到大排列

    示例:

    例 1:ds1.plot(成绩,list(60,80,90) ,科目 ==“数学”)

    返回值为 list(0,1,2,3) 对数据集 ds1 过滤出科目等于数学的记录按成绩段进行分组,60 分以下不包含 60 分、60-79,80-89,90 分及 90 分以上等四组。同时定义显示值表达式为:map(list(0,1,2,3),list(不及格, 及格, 良好, 优秀))

    例 2:ds1.plot@c(成绩,arg1)

    其中 arg1 为参数,其数据类型是整数组,其值为 "60,70,80,90" 。显示值表达式为:map(to(0,count(arg1)),arg2),其中 arg2 为字符串组,其值为 {“不及格”,“及格”,“中”,“良好”,“优秀”}。 本例通过参数动态控制分组值段以及结果组的显示值。

    更多相关内容
  • 报表需求 某大型超市需要做一张年度区域销售统计报表 展示2019和2020年度各地区每月的销售情况; 报表效果 报表设计过程 首先需要选择一款适合的报表工具,这里采用 积木报表平台 进行设计,具体步骤如下: 1. 数据...

    报表需求

    某大型超市需要做一张年度区域销售统计报表 展示2019和2020年度各地区每月的销售情况;

    报表效果

    报表设计过程

    首先需要选择一款适合的报表工具,这里采用积木报表平台进行设计,具体步骤如下:

    1. 数据准备
    a) 数据库中新建一张表,存储业务明细数据

    a

    b)通过SQL方式展示报表

    如果想使用SQL方式展示数据,需要先让报表与数据库建立连接,具体步骤如下:

    • 点击“数据集管理 ->SQL数据集”,进入数据集页面

    • 点击图2中“数据源维护”按钮,弹出数据源列表(如图3)

    • 点击数据源列表的“新增”按钮,进入添加数据库连接页面(如图4)。

    - 以MySQL为例,“数据源名称”自己随便写一个
    - “数据源类型”选择MySQL、“驱动类型”、“数据源地址”、“用户名”、“密码”要根据自己数据库进行填写,
    - 添加完数据源后要点击“测试”,看数据源是否连接成功;
    
    

    c)添加数据集

    选择刚刚添加的“数据源”,在“报表SQL”中输入sql语句,点击”sql解析“按钮,就可以解析出相应字段,然后填写“编码”、“名称”等信息,就可以完成数据集的添加;

    2. 模板设计
    a)我们通过分析以上报表,发现表头的“2020、2019”数据是循环的,可用数据库“year”字段进行循环展示;同理“1月、2月、…”数据也是循环展示的,用数据库“mouth”字段循环展示,所以我们只需要把报表样式设计成如下:

    b)把左侧数据集数据拖动到单元格中;

    c) 对数据配置属性类型;
    • 效果图中,“地区”和“类别”是纵向循环展示数据的,并且是纵向分组的,所以将这两个单元格的“聚合方式”设置为“分组”,“扩展方向”设置为“纵向”;

    • 效果图中,“年”和“月”是横向循环展示数据的,并且是横向分组的,所以将这两个单元格的“聚合方式”设置为“分组”,“扩展方向”设置为“横向”;

    • 效果图中,展示销量的单元格是循环展示数据的,所以将这个单元格“高级配置”设置为“动态属性”;

    如果你也想做个这样的报表,点击这里下载积木报表,重点是免费的吆!!!
    展开全文
  • 时 间:2012-08-17 12:50:26作 者:摘 要:二级Access数据库备考笔记之报表排序和分组正 文:报表排序和分组缺省情况下,报表中的记录是按照自然顺序,即数据输入的先后顺序排列显示的。在实际应用过程中,经常需要...

    时 间:2012-08-17 12:50:26

    作 者:摘 要:二级Access数据库备考笔记之报表排序和分组

    正 文:

    报表排序和分组

    缺省情况下,报表中的记录是按照自然顺序,即数据输入的先后顺序排列显示的。在实际应用过程中,经常需要按照某个指定的顺序排列记录数据,例如按照年龄从小到大排列等,称为报表“排序”操作。此外,报表设计时还经常需要就某个字段按照其值的相等与否划分成组来进行一些统计操作并输出统计信息,这就是报表的“分组”操作。

    记录排序

    使用“报表向导”创建报表时,操作到如图5.13所示步骤时,会提示设置报表中的记录排序,这时,最多可以对4个字段进行排序。“报表向导”中设置字段排序,除有最多一次设置4个字段的限制外,排序依据还限制只能是字段,不能是表达式。实际上,一个报表最多可以安排10个字段或字段表达式进行排序。

    例5.8 在“教师信息表”报表设计中按照教师“工作时间”由早到晚进行排序输出。具体操作过程如下:

    (1)使用“设计”视图打开报表,在“视图”菜单中选择“排序与分组”选项或单击工具栏上的“排序与分组”201208081507336757.gif按钮打开“排序与分组”对话框,如图5.38所示。

    201208081507347864.gif

    (2)在“排序与分组”对话框中,选择第一排序依据及其排序次序(升序或降序);这里,单击“字段/表达式”列的第一行并选择第一排序字段为“工作时间”,设置“排序次序”列的值为“升序”。如果需要可以在第二行设置第二排序字段,依此类推设置多个排序字段。在报表中设置多个排序字段时,先按第一排序字段值排列,第一排序字段值相同的记录再按第二排序字段值去排列,依此类推。

    (3)单击工具栏上的“打印预览”按钮,对上述排序数据进行预览,如图5.39所示;最后保存报表。

    201208081507352181.gif

    记录分组

    分组是指报表设计时按选定的某个(或几个)字段值是否相等而将记录划分成组的过程。操作时,先要选定分组字段,将字段值相等的记录归为同一组,字段值不等的记录归为不同组。通过分组可以实现同组数据的汇总和输出,增强了报表的可读性。一个报表中最多可以对10个字段或表达式进行分组。

    例5.9 实现图5.4所示报表设计对学生成绩进行分组统计。操作步骤如下:

    (1)首先,通过“设计”视图建立如图5.40所示的“学生选课成绩汇总表”。

    201208081507354011.gif

    (2)“视图”菜单中选择“排序与分组”选项或单击工具栏上的“排序与分组”按钮,弹出“排序与分组”对话框。单击对话框中“字段/表达式”列的第一行,选择“编号”字段作为分组字段,保留排序次序为“升序”。

    (3)设置“排序与分组”对话框下部的分组属性。“组页眉”属性设置为“是”以显示组页眉节;“组页脚”属性设置为“是”以显示组页脚节;“分组形式”属性设置为“每一个值”以“编号”字段的不同值划分为;“组间距”属性设置为“1”以指定分组的间隔值;“保持同页”属性设置为“不”以指定输出时组页眉、主体和组页脚不在同一页上;若设置为“整个组”则组页眉、主体和组页脚会输出在同一页上。此时,“排序与分组”对话框显示状态如图5.41所示。

    201208081507357063.gif

    “分组形式”属性由分组字段的数据类型决定,具体见表5.2所示。

    201208081507355239.gif

    (4)设置完属性后,会在报表中添加组页眉和组页脚两个节区,分别用“编号页眉”和“编号页脚”来标识;将主体节内的“编号”和“姓名”两个文本框移至“编号页眉”节,并设置其格式:字体为“宋体”,字号为11磅。

    分别在“编号页脚”节和报表页脚节内添加一个“控件源”为计算成绩平均值表达式的绑定文本框及相应附加标签;在“页面页脚”节,添加一个绑定文本框以输出显示报表页码信息。如图5.42所示。

    201208081507364780.gif

    (5)单击工具栏上的“打印预览”按钮,对上述排仔数据进行预览,分组显示和统计的效果即为图5.4所示。报表命名保存。

    对已经设丑排序或分组的报表,可以在上述排序或分组设置环境里进行以下操作:添加排序、分组字段或表达式,刚除排序、分组字段或表达式,更改排序、分组字段或表达式。

    Access二级考试QQ交流群(群号:125674407)

    Access源码网店

    展开全文
  • 首页专栏java文章详情0分组报表怎么做,积木报表十分钟搞定!scott发布于 今天 12:24报表需求某大型超市需要做一张年度区域销售统计报表 展示2019和2020年度各地区每月的销售情况;报表效果报表设计过程首先需要选择...

    首页

    专栏

    java

    文章详情

    0

    分组报表怎么做,积木报表十分钟搞定!

    112637.htmlscott发布于 今天 12:24

    报表需求

    某大型超市需要做一张年度区域销售统计报表 展示2019和2020年度各地区每月的销售情况;

    报表效果

    05604bfbe85b98c0ca4175d0e0879c96.png

    报表设计过程

    首先需要选择一款适合的报表工具,这里采用 积木报表平台 进行设计,具体步骤如下:

    1. 数据准备

    a) 数据库中新建一张表,存储业务明细数据

    f13cfe2fd64761f61ebe6946b69dca6f.pnga

    b)通过SQL方式展示报表

    如果想使用SQL方式展示数据,需要先让报表与数据库建立连接,具体步骤如下:

    点击“数据集管理 ->SQL数据集”,进入数据集页面

    cd353488e20e61033c047d7ddf0d3a73.png54f3f6250de7a587ad39cb168d129ff6.pnga791a25bf1fbe1cb8895e443fafc82a8.png2a7ec599df92709018f9cef6262747af.png

    点击图2中“数据源维护”按钮,弹出数据源列表(如图3)

    492f6c1b34ad177e58621c881bd6d57f.png9d8b56089622eae5e68e17bb68bc2954.png

    点击数据源列表的“新增”按钮,进入添加数据库连接页面(如图4)。

    - 以MySQL为例,“数据源名称”自己随便写一个

    - “数据源类型”选择MySQL、“驱动类型”、“数据源地址”、“用户名”、“密码”要根据自己数据库进行填写,

    - 添加完数据源后要点击“测试”,看数据源是否连接成功;

    98092b59511073728b4ad7b6fd2b7350.png

    c)添加数据集

    选择刚刚添加的“数据源”,在“报表SQL”中输入sql语句,点击”sql解析“按钮,就可以解析出相应字段,然后填写“编码”、“名称”等信息,就可以完成数据集的添加; 7c675a1970b4603ad71ae48636485c7b.png

    2. 模板设计

    a)我们通过分析以上报表,发现表头的“2020、2019”数据是循环的,可用数据库“year”字段进行循环展示;同理“1月、2月、…”数据也是循环展示的,用数据库“mouth”字段循环展示,所以我们只需要把报表样式设计成如下:

    4e18ddd39f2b7983b1a5e68b2349d29c.png

    b)把左侧数据集数据拖动到单元格中;

    6edc3837de129b59e1131f1799fa6f7c.png

    c) 对数据配置属性类型;

    效果图中,“地区”和“类别”是纵向循环展示数据的,并且是纵向分组的,所以将这两个单元格的“聚合方式”设置为“分组”,“扩展方向”设置为“纵向”; 5dcda6b313151447a43aacf34de49393.png

    效果图中,“年”和“月”是横向循环展示数据的,并且是横向分组的,所以将这两个单元格的“聚合方式”设置为“分组”,“扩展方向”设置为“横向”; 2b434acd36ee4da3489e9af97fb7a8d6.png

    效果图中,展示销量的单元格是循环展示数据的,所以将这个单元格“高级配置”设置为“动态属性”; 97585dfdf86d93b1ed0d2fac3be90f1c.png

    如果你也想做个这样的报表,点击这里下载积木报表,重点是免费的吆!!!

    java可视化报表工具低代码开发

    阅读 39发布于 今天 12:24

    赞收藏

    分享

    本作品系原创,采用《署名-非商业性使用-禁止演绎 4.0 国际》许可协议

    112637.html

    JEECG

    一款基于代码生成器的快速开发平台!前后端分离架构 SpringBoot 2.x,Mybatis,Shiro,JWT,Vue&Ant…

    关注专栏

    112637.html

    scott

    专注技术开源,打造开源的JAVA快速开发平台—JEECG(获得CSDN专家访谈,ITEYE访谈、连续五年中国最火TOP5、十大优秀开源项目等)、免费微信管家平台—JeeWx 捷微(获得2014年微信开发商大会第一名)

    508声望

    20粉丝

    关注作者

    0 条评论

    得票时间

    112637.html

    提交评论

    112637.html

    scott

    专注技术开源,打造开源的JAVA快速开发平台—JEECG(获得CSDN专家访谈,ITEYE访谈、连续五年中国最火TOP5、十大优秀开源项目等)、免费微信管家平台—JeeWx 捷微(获得2014年微信开发商大会第一名)

    508声望

    20粉丝

    关注作者

    宣传栏

    目录

    报表需求

    某大型超市需要做一张年度区域销售统计报表 展示2019和2020年度各地区每月的销售情况;

    报表效果

    05604bfbe85b98c0ca4175d0e0879c96.png

    报表设计过程

    首先需要选择一款适合的报表工具,这里采用 积木报表平台 进行设计,具体步骤如下:

    1. 数据准备

    a) 数据库中新建一张表,存储业务明细数据

    f13cfe2fd64761f61ebe6946b69dca6f.pnga

    b)通过SQL方式展示报表

    如果想使用SQL方式展示数据,需要先让报表与数据库建立连接,具体步骤如下:

    点击“数据集管理 ->SQL数据集”,进入数据集页面

    cd353488e20e61033c047d7ddf0d3a73.png54f3f6250de7a587ad39cb168d129ff6.pnga791a25bf1fbe1cb8895e443fafc82a8.png2a7ec599df92709018f9cef6262747af.png

    点击图2中“数据源维护”按钮,弹出数据源列表(如图3)

    492f6c1b34ad177e58621c881bd6d57f.png9d8b56089622eae5e68e17bb68bc2954.png

    点击数据源列表的“新增”按钮,进入添加数据库连接页面(如图4)。

    - 以MySQL为例,“数据源名称”自己随便写一个

    - “数据源类型”选择MySQL、“驱动类型”、“数据源地址”、“用户名”、“密码”要根据自己数据库进行填写,

    - 添加完数据源后要点击“测试”,看数据源是否连接成功;

    98092b59511073728b4ad7b6fd2b7350.png

    c)添加数据集

    选择刚刚添加的“数据源”,在“报表SQL”中输入sql语句,点击”sql解析“按钮,就可以解析出相应字段,然后填写“编码”、“名称”等信息,就可以完成数据集的添加; 7c675a1970b4603ad71ae48636485c7b.png

    2. 模板设计

    a)我们通过分析以上报表,发现表头的“2020、2019”数据是循环的,可用数据库“year”字段进行循环展示;同理“1月、2月、…”数据也是循环展示的,用数据库“mouth”字段循环展示,所以我们只需要把报表样式设计成如下:

    4e18ddd39f2b7983b1a5e68b2349d29c.png

    b)把左侧数据集数据拖动到单元格中;

    6edc3837de129b59e1131f1799fa6f7c.png

    c) 对数据配置属性类型;

    效果图中,“地区”和“类别”是纵向循环展示数据的,并且是纵向分组的,所以将这两个单元格的“聚合方式”设置为“分组”,“扩展方向”设置为“纵向”; 5dcda6b313151447a43aacf34de49393.png

    效果图中,“年”和“月”是横向循环展示数据的,并且是横向分组的,所以将这两个单元格的“聚合方式”设置为“分组”,“扩展方向”设置为“横向”; 2b434acd36ee4da3489e9af97fb7a8d6.png

    效果图中,展示销量的单元格是循环展示数据的,所以将这个单元格“高级配置”设置为“动态属性”; 97585dfdf86d93b1ed0d2fac3be90f1c.png

    如果你也想做个这样的报表,点击这里下载积木报表,重点是免费的吆!!!

    展开全文
  • 报表对数据进行汇总统计时,通常是按照某个字段进行分组,比如地区、类别字段分组其他信息进行汇总,但有一种分组模式为不规则分组,其分组是根据数据的值段来分的,例如按照分数段、年龄段、时间段等,...
  • mysql技巧--某一字段分组取最大(小)值所在行的数据,这是mysql数据库程序员经常用到的在处理一些报表数据时候可以活用!那么猎微网将总结几种mysql查询最大值 mysql查询最小值的方法!mysql表图如下具体Php 连接...
  • 当去饭店吃饭的时候,菜单上的菜也是按类别排列的,比如凉菜,热菜,汤类,主食等。点菜时你会直接翻到你想要的那一类菜单,点菜。……通过上面场景,大家就理解分组呈现数据的好处了,分组可以帮助快速定位,方便...
  • 例如,如果在报表区域销售额进行分组,则可以使销售趋势一目了然,而在其他情况下可能不容易看出这些趋势。此外,可以在报表中各个组的结尾处进行汇总,从而避免了用计算器完成大量手工计算工作。Microsoft ...
  • 报表中,用分组进行数据统计的非常重要,本文就页面报表用到的分组概念详细步骤说明。 页面报表分组控件--Table、Matrix、List、Chart 在RDL/页面报表中,您可以设置分组来组织报表中的数据,据数据区域的不同,...
  • MySQL数据表进行分组查询(GROUP BY)GROUP BY关键字可以将查询结果按照某个字段或多个字段进行分组字段中值相等的为一组。基本的语法格式如下:GROUP BY 属性名 [HAVING 条件表达式] [WITH ROLLUP]属性名:是指...
  • 再根据列2排序,列2的数值大小排序,并自动生成递增数字的标记字段,若列2有重复值,自动生成的数字依然能顺序递增!现有SQL语句:SELECT b.列1, b.列2, (SELECT count(*)+1 as dd FROM [表1] as a where a.[列1...
  • 报表需要某大型超市须要做一张年度区域销售统计报表 展现2019和2020年度各地区每月的销售状况;报表成果报表设计过程首先须要抉择一款适宜的报表工具,这里采纳 积木报表平台 进行设计,具体步骤如下:1. 数据筹备a)...
  • 报表中我们通常称这种分组为“等值分组”。实现这种等值分组也很容易,只需要按照指定字段做 group(), 再针对分组做聚合运算即可。如下图 1: 关于等值分组图中可以看到对应设置的每个表达式,这里不多做说明,...
  • 同时,在某些业务中还会按照一些字段分组,比如地区、类别等,在报表展示或打印时则要求先按照字段进行分组,将分组字段相同的数据放到一组内进行明细数据的打印,并在组内要求实现补空行操作。另外,对于分组数据,...
  • 传统的分组报表制作方式是用户根据数据绑定向导指定分组,汇总字段,生成分组报表,但是这样也只是在小数据量的前提下可以实施,当数据量很大很复杂时,相信使用葡萄城报表制作分组报表,就是事半功倍了。
  • 葡萄城报表控件ActiveReports V14.0 全面支持 .NET Core平台。同时 ActiveReports的桌面报表设计器UI也全面增强,报表预览方式得以全面优化,报表设计能力得以大幅提升。针对在线报表设计器,ActiveReports V14.0...
  • 葡萄城报表是一套强大的报表开发和系统搭建工具,既能与您开发的报表软件项目紧密集成,也可独立部署运行,支持多数据源,具有无编码、灵活、稳定等特性,可以帮您快速搭建专业的报表软件系统,实现各类报表的设计、...
  • mysql 分组统计

    千次阅读 2022-05-01 20:35:14
    文章包含mysql多种分组统计年 月 日 周 天 附带sql表结构以及说明 mysql表结构如下 1. CREATE TABLE `数据库名称`.`Untitled` ( `id` bigint(0) NOT NULL AUTO_INCREMENT COMMENT '主键Id', `dev_id` bigint(0...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,791
精华内容 1,516
热门标签
关键字:

对报表按类别字段分组