| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 780 人关注过本帖
标题:VFP 6.0对表汇总问题
只看楼主 加入收藏
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
结帖率:98.98%
收藏
已结贴  问题点数:20 回复次数:18 
VFP 6.0对表汇总问题
我有个表,A1.DBF
编号       时间        费用
1P1001     2015-1-1    100
1P1001     2015-2-1    110
1P1001     2015-3-1    150
1P1002     2015-1-1    200
1P1002     2015-2-1    130
1P1002     2014-12-1    100
1P1003     2014-12-1    100
....
我现在要对费用进行汇总,但我条件不同的。
汇总所有金额
SELECT SUM(费用) AS 合计 FROM A1 GROUP BY 编号 INTO CRUS HZ
对欠款汇总
SELECT SUM(费用) AS 欠款 FROM A1 WHERE 时间<> TODAY GROUP BY 编号 INTO CRUS QK
SELECT HZ.合计,HZ.编号,QK.欠款 FROM HZ,QK WHERE HZ.编号=QK.编号 INTO TABLE TMP_HZ
我现在是这样做的,我怎么把上面的3个合起来,直接生成TMP_HZ啊?
2015-03-25 09:19
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
收藏
得分:0 
第1个的汇总结果包含了欠款的,我想把不是当前月份的数据,都汇总为欠款。TODAY是变量,就是当前月的时间。
第1个汇总,就是汇总对应编号的,所用金额,
第2个汇总,就是除了当前月的,也就是欠款。
我是菜鸟,现在是用了2个表来过度,然后把2个表合起来。。
怎么才能直接1次汇总,就搞定呢。
2015-03-25 09:25
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
收藏
得分:0 
正确来说,这个,时间<> TODAY ,应该是 时间< TODAY 的,,但这个只是影响到数据问题,和这个问题不关系不大
2015-03-25 09:27
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:3 
楼主的问题应该是三个
1、所有数据汇总
2、不包含当前月的数据汇总
3、按编号分组数据汇总
将上面三个表的汇总数据放在一个表中,是这个意思吧

坚守VFP最后的阵地
2015-03-25 11:55
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
收藏
得分:0 
是的,
我目前是分2次汇总,然后再把2次的结果再合起来
2015-03-25 11:58
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:3 
只有多次汇总,一次达不到要求
原表中有多少条记录

坚守VFP最后的阵地
2015-03-25 12:20
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
收藏
得分:0 
不多,才4000条。我还以为可以1次搞定,
2015-03-25 13:34
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:3 
如果是VFP6.0的SQL命令

SELECT "所有费用合计"+SPACE(10) 项目,SUM(费用) 费用 FROM A1 ;
UNION SELECT "非当前月费用",SUM(费用) FROM A1 WHERE MONTH(时间)!=MONTH(DATE()) AND YEAR(时间)!=YEAR(DATE());
UNION SELECT "按编号汇总费用",SUM(费用) FROM A1 GROUP BY 编号 INTO CURSOR TEMP
BROWSE

时间按日期型数据处理

[ 本帖最后由 sdta 于 2015-3-25 14:12 编辑 ]

坚守VFP最后的阵地
2015-03-25 14:09
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
收藏
得分:0 
SELECT "所有费用合计"+SPACE(10) 项目,SUM(费用) 费用 FROM A1 ;
"所有费用合计"+SPACE(10) 项目,这个,什么意思。
2015-03-25 16:36
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:3 
增加字符型字段宽度

坚守VFP最后的阵地
2015-03-25 16:41
快速回复:VFP 6.0对表汇总问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025100 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved