您当前的位置: 首页 > 数据库教程 > ACCESS教程 > 如何在Access2007 表中同时显示明细、小计、总计?

如何在Access2007 表中同时显示明细、小计、总计?

作者: 来源: 发布时间: 2010-06-05 16:53 点击:
问题描述: 如何在 Access2007 表中同时显示明细、小计、总计?ID fullname pay2 a ¥500.004 a ¥600.005

如何在Access2007 表中同时显示明细、小计、总计?

问题描述: 如何在 2007 表中同时显示明细、小计、总计?
ID      fullname  pay
2       a         ¥500.00
4       a         ¥600.00
5       a         ¥700.00
6       b         ¥800.00
7       b          ¥55.00


有以上格式的表格,要根据 FULLNAME 做小计,然后全部的做总计,变成以下格式

fullname  pay
a           ¥700.00
a           ¥600.00
a           ¥500.00
a 小计    ¥1,800.00
b            ¥55.00
b           ¥800.00
b 小计      ¥855.00
总计      ¥2,655.00


该如何完成?
 
问题解答:首先,应该了解, 表 是用来存储数据的,而不是用来显示统计结果以及显示给最终用户看的。类似工作应该在 Access2007 报表 中完成,报表中可以分组且显示小计。具体内容你可以参考帮助或者 NORTHWIND.MDB 示例 中的报表。

其次,在 ADO 中专门有一部分,称为数据整形用来完成上述工作,但是它需要配合 的 DATAGRID 等控件来完成显示。 部分 VB 控件也可以使用在 Access2007 的窗体中。

最后,如果你实在想在 Access2007 的表格中完成,你可以使用组织 JET SQL 生成查询的方式来完成。

select fullname,pay from pay 


用来查询出明细

SELECT pay.fullname & " 小计" AS 表达式1, Sum(pay.pay) AS payAll
FROM pay
GROUP BY pay.fullname & " 小计" 


用来 分类汇总 小计,注意上述技巧,在 FULLANME 字段旁加“ 小计”不只是为了好看,要将小计这行放在明细的下面完全要靠  ORDER BY FULLNAME 来实现,你可以通过调整这一行来编排它的显示顺序

select "总计", sum(pay) from pay


用来显示总计数,请注意,“总”字的 ANSI 编码必须大于 FULLNAME 字段中任何一个字符,否则就无法根据 FULLNAME 排序将总计数放在表格的最下面一行。提示:不能用“总”的时候你可以用其他字符,甚至是符号也可以,只要它的机器码够大就行。

将上述语句用 UNION ALL 来组织就可以达到预想的效果。

select fullname,pay from pay
union all

SELECT pay.fullname & " 小计" AS 表达式1, Sum(pay.pay) AS payAll
FROM pay
GROUP BY pay.fullname & " 小计"

union all

select "总计", sum(pay) from pay

order by fullname

分享到:
本文"如何在Access2007 表中同时显示明细、小计、总计?"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4